花果山第一届猿类分级考试实录--Talk is cheap,Show me the code
本故事纯属虚构,如有雷同,纯属巧合!
故事背景

public class Counter1 { private static int cnt=0; public int increase() { return ++cnt; } public int decrease() { return --cnt; } }
旁白:实现了功能。
二阶猿类
public class Counter2 { private static long cnt=0; public long increase() { return ++cnt; } public long decrease() { return --cnt; } }
旁白:考虑了int的范围限制,long的范围更广泛。
三阶猿类
public class Counter3 { private static long cnt=0; public synchronized long increase() { return ++cnt; } public synchronized long decrease() { return --cnt; } }
旁白:考虑了并发环境下的执行
四阶猿类
public class Counter4 { private static AtomicLong cnt=new AtomicLong(0); public long increase() { return cnt.getAndIncrement(); } public long decrease() { return cnt.getAndDecrement(); } }