effective java
文章平均质量分 92
soullines
只若初见
展开
-
java中访问修饰符:private,public,protected
在java中出于封装,解耦,还有类的安全性考虑,通常会用修饰符来修饰成员,方法,还有相关的域;下面简单来看下private,public,protected,比较基础,但是也比较重要1.public —- 在任何地方都可以访问改成员public是我们开发中比较常用:在static中直接可以 类名.function 来调用通常情况下,会使用实例化对象来调用 对象.fun...原创 2018-05-28 16:55:21 · 656 阅读 · 1 评论 -
多个构造器时考虑用构建器:javaBeans模式可能处于不一致性 ------- Effective java source
在 Effective java中有看到介绍遇到多个构造器时考虑用构建器中有一个javaBeans模式致命缺点是不一致性,同时与之相关带来线程安全问题;本篇立足于Effective java来进行清晰的探讨;1. 重叠构造在java中比较基础的是构造器来初始化,作为程序员习惯使用重叠构造模式,当传入一个参数的构造时候,第一个有一个必选参数,第二个有一个必选参数和一个可选参数,...原创 2018-05-08 15:44:02 · 1509 阅读 · 3 评论 -
java中枚举优先使用
java 1.5之后出现枚举类型,枚举类型的出现为开发者提供类型安全的检测和提高可读性;当然枚举的使用有一个缺点就是相比于int定义的标志位,装载和初始化枚举时会有空间和时间成本;所以除了小型终端,实践中不必太在意这个问题;1.int枚举模式和String枚举模式的局限性:1.1 int枚举在java开发中,经常会使用常量来定义一些标志位之类的情况;比如在下面程序中,...原创 2018-06-21 16:08:51 · 852 阅读 · 0 评论 -
java泛型:擦除/桥方法/协变(不要在新代码中使用原生态类型) ---- effective java notes
在java中,声明一个或者多个类型参数的类或者接口就是泛型;泛型是java 1.5之后出现的,在我看来比较划时代,一部分java 开发者会体会到,无论在表述还是安全性的方面,泛型的出现解决了Object的尴尬;泛型的使用域比较广,这里不做赘述,主要围绕 协变 , 擦除 , 桥 进行解释1.泛型优于原生态类型泛型是指明类型,或者使用?作为无限通配符的类或者接口,如:...原创 2018-06-07 15:39:52 · 512 阅读 · 1 评论 -
java中优先考虑泛型----禁止数组类型的未受检转换和禁止标量类型(Effective java code)
Effective第26条中有提到优先考虑泛型,但是由于java会设计到数组所以会有泛型兼容数组的问题;首先泛型不应该与数组复用,但是java的历史原因,泛型的问世比较晚,必须兼容旧版本代码!所以有些情况必须拒绝受检!!!!我们以stack为例: 在泛型没有问世之前是这样的:public class Stack { private Object[] element...原创 2018-06-14 16:18:44 · 355 阅读 · 0 评论