建议88:用枚举实现工厂方法模式更简洁 工厂方法模式(Factory Method Pattern)是" 创建对象的接口,让子类决定实例化哪一个类,并使一个类的实例化延迟到其它子类"。工厂方法模式在我们的开发中经常会用到。下面以汽车制造为例,看看一般的工厂方法模式是如何实现的,代码 ...
枚举和注解都是在Java . 中引入的,虽然它们是后起之秀,但其功效不可小觑,枚举改变了常量的声明方式,注解耦合了数据和代码。 建议 :推荐使用枚举定义常量 常量声明是每一个项目都不可或缺的,在Java . 之前,我们只有两种方式的声明:类常量和接口常量,若在项目中使用的是Java . 之前的版本,基本上都是如此定义的。不过,在 . 版本以后有了改进,即新增了一种常量声明方式:枚举声明常量,看如 ...
2016-09-26 09:52 3 3256 推荐指数:
建议88:用枚举实现工厂方法模式更简洁 工厂方法模式(Factory Method Pattern)是" 创建对象的接口,让子类决定实例化哪一个类,并使一个类的实例化延迟到其它子类"。工厂方法模式在我们的开发中经常会用到。下面以汽车制造为例,看看一般的工厂方法模式是如何实现的,代码 ...
泛型可以减少强制类型的转换,可以规范集合的元素类型,还可以提高代码的安全性和可读性,正式因为有这些优点,自从Java引入泛型后,项目的编码规则上便多了一条:优先使用泛型。 反射可以“看透” 程序的运行情况,可以让我们在运行期知晓一个类或实例的运行状况,可以动态的加载和调用,虽然有一定 ...
建议106:动态代理可以使代理模式更加灵活 Java的反射框架提供了动态代理(Dynamic Proxy)机制,允许在运行期对目标类生成代理,避免重复开发。我们知道一个静态代理是通过主题角色(Proxy)和具体主题角色(Real Subject)共同实现主题角色(Subject)的逻辑 ...
建议26:提防包装类型的null值 我们知道Java引入包装类型(Wrapper Types)是为了解决基本类型的实例化问题,以便让一个基本类型也能参与到面向对象的编程世界中。而在Java5中泛型更是对基本类型说了"不",如果把一个整型放入List中,就必须使用Integer包装类 ...
噢,它明白了,河水既没有牛伯伯说的那么浅,也没有小松鼠说的那么深,只有亲自试过才知道。 ---寓言故事《小马过河》 数据处理是每种语言必备的功能,Java更甚之,数据集可以允许重复 ...
建议70:子列表只是原列表的一个视图 List接口提供了subList方法,其作用是返回一个列表的子列表,这与String类subSting有点类似,但它们的功能是否相同呢?我们来看如下代码: c1是通过ArrayList的构造函数创建的,c2是通过列表的subList ...
的情景,需要它帮我们建立“完美世界”。 建议110:提倡异常封装 Java语言的异常处理机制可 ...
建议98:建议的采用顺序是List中泛型顺序依次为T、?、Object List<T>、List<?>、List<Object>这三者都可以容纳所有的对象,但使用的顺序应该是首选List<T>,次之List<?>,最后选择 ...