java类的设计技巧
1)一定将数据设计为私有。
最重要的是: 绝对不要破坏封装性。在有的时候,需要编写一个访问器方法或更改器方法,但是最好还是保持实例域的私有性。很多惨痛的经验告诉我们,数据的表示形式很可能会改变,但他们的使用方式却不会经常发生变化。当数据保持私有时,他们的表示形式的变化不会对类的使用者产生影响,即使出现bug也易于检测。
最重要的是: 绝对不要破坏封装性。在有的时候,需要编写一个访问器方法或更改器方法,但是最好还是保持实例域的私有性。很多惨痛的经验告诉我们,数据的表示形式很可能会改变,但他们的使用方式却不会经常发生变化。当数据保持私有时,他们的表示形式的变化不会对类的使用者产生影响,即使出现bug也易于检测。
2)一定要对数据初始化。
java不对局部变量进行初始化,但是会对对象的实例域进行初始化。最好不要依赖于系统的默认值,而是应该显式地初始化所有的数据,具体的初始化方式可以是提供默认值,也可以是在所有构造器中设置默认值。
java不对局部变量进行初始化,但是会对对象的实例域进行初始化。最好不要依赖于系统的默认值,而是应该显式地初始化所有的数据,具体的初始化方式可以是提供默认值,也可以是在所有构造器中设置默认值。
3)不要在类中使用过多的基本数据类型。
就是说,用其他的类代替多个相关的基本数据类型的使用。这样会使类更加易于理解且易于修改
4)不是所有的域都需要独立的域访问器和域更改器。
或许,需要获得或设置雇员的薪金。而一旦构造了雇员对象,就应该禁止雇佣日期,并且在对象中,常常包含一些不希望别人获得或设置的实例域,
或许,需要获得或设置雇员的薪金。而一旦构造了雇员对象,就应该禁止雇佣日期,并且在对象中,常常包含一些不希望别人获得或设置的实例域,
5)使用标准格式进行类的定义
一定采用下面的顺序书写类的内容
公有访问特性部分
包作用域访问特性部分
私有访问特性部分
在每一部分中,应该按照下列顺序列出
实例方法
静态方法
实例域
静态域
6)将职责过多的类进行分解
7)类名和方法名要能够体现他们的职责
关注微信公众号福利!!!
回复关键字「666」获取一份最新 Java 架构资料,你要的都有!
回复关键字「Java」获取JVM, 多线程等Java技术系列教程;
回复关键字「spring」获取Spring, Spring Boot, Spring Cloud教程;
回复关键字「架构」获取分布式、微服务、架构、高并发等系列干货;
回复关键字「面试」获取各种 Java 面试题及答案、面试实战经验;