
EffecitveJava
lvhuiqing
这个作者很懒,什么都没留下…
展开
-
EffecitveJava_消除过期的对象引用
当一个类自己管理自己的内存时,要注意内存溢出的现象 可以造成内存泄露的一个例子:import java.util.EmptyStackException;public class MemroyleaksStack { private Object[] elements; private int size = 0; public MemroyleaksStac原创 2009-08-17 13:30:00 · 636 阅读 · 0 评论 -
EffecitveJava_改写equals方法应该遵循的原则
改写equals一定要遵循的原则: 1,自反性(refexive)。对于任意的引用值x,x.equals(x)一定为true。2,对称性(symmetric)。对于任意的引用值x和y,当且仅当x.equals(y)时,y.equals(x)也一定为true。3,传递性(transitive)。对于任意的引用值x,y和z,如果x.equals(y)为true,y.equals(x)为原创 2009-08-17 13:53:00 · 796 阅读 · 0 评论 -
EffecitveJava_改写clone(没看懂)
待补充原创 2009-08-17 14:58:00 · 301 阅读 · 0 评论 -
EffecitveJava_支持非可变性
使某一个类变成非可变类应该遵循下面四条规则:1,不要提供任何会修改对象的方法(mutator)。2,保证没有可被子类改写的方法。3,所有域都是final的。4,保证对于任何可变组件的互斥访问。不要使用用户提供的对象初始化这样的非可变类的域,不要在任何访问方法中返回该对象的引用。 非可变类的优点:1,比较简单,只有一个状态。2,线程安全。3,可以被自由的共享。原创 2009-08-17 15:50:00 · 305 阅读 · 0 评论 -
EffecitveJava_尽量使用静态内部类
1. 嵌套类:是指被定义在另一个类的内部的类。嵌套类存在的目的应该只是为它的外围类提供服务。嵌套类一共分为四种:static member class;nonstatic member class;anonymourse class2. 如果嵌套类不需要访问外围类的资源,则应该将其设置为static。3. 如果没有外围类的情况下也要建立一个嵌原创 2009-08-18 17:09:00 · 361 阅读 · 0 评论 -
EffecitveJava_对要求精确计算的场合不要使用double,float
EffecitveJava_对要求精确计算的场合不要使用double,float public static void doubleError() { double founds = 1.00;// 口袋里一共有一块钱 int itemBought = 0;// 记录可以买几个糖果 for (double price = 0.1; founds >= price; pri原创 2009-08-20 19:07:00 · 479 阅读 · 0 评论