自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(2)
  • 收藏
  • 关注

原创 Effective Java-读书笔记 第三章-对于所有对象都通用的方法

不要试图从散列码计算中排除掉一个对象的关键域来提高性能,这有可能导致散列函数将大量实例映射到极少数的散列码上,本来以线性级时间运行的程序,将会以平方级的时间运行。如果在编写一个值类,它具有非常明显的内在排序关系,比如按字母排序、按数值排序、按日期排序等,那就应该坚决考虑实现Comparable接口。< 和 > 操作符,而应该使用装箱基本类型的静态compare方法,或者在Comparator接口中使用比较器构造方法。在每个覆盖了的equals方法的类中,那必须覆盖hashCode方法。

2023-08-31 08:32:16 63

原创 Effective Java-读书笔记 第二章-创建和销毁对象

更常见的情况是,我们并不确定“缓存项的生命周期是否有意义”,缓存中的项会随着时间的推移变得越来越没有价值,在这种情况下,缓冲应该时不时清除掉没用的项。使用JavaBeans模式,这种方式创建实例很容易,并且易于阅读,但是这有一个严重的缺点:因为构造过程被分到了几个调用中,在构造过程中JavaBeans可能处于不一致的状态,同时JavaBeans模式与不可变类之间存在冲突,这就需要程序员付出额外的努力来确保它的线程安全。公有域方法的优势在于可以清楚的理解这个类是一个Singleton:共有的静态域是静态的。

2023-08-30 10:41:07 33

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除