0. 前言

OOP(面向对象编程)的特点:封装继承多态


1. 类的设计技巧

应用下面这些技巧可以使得设计出来的类更符合 OOP 的特点。


#1 一定要保证数据私有

绝对不要破坏封装性。这是最重要的。

有时候,我们需要编写一个访问器方法或更改器方法(gettersetter),最好还是保持实例域的私有性。

当数据保持私有时,它们表现形式的变化不会对类的使用者产生影响,即使出现bug也易于检测。


#2 一定要对数据进行初始化

具体的初始化方式可以是直接提供默认值,也可以是在构造器中设置默认值

Java不会对局部变量进行初始化,但会对对象的实例域进行初始化。

所以,最好不要依赖于系统的默认值,而是使用上面的方式显式地初始化所有数据


#3 不要在类中使用过多的基本类型

换句话说,就是可以用一个类来替换这些基本类型的使用;这样会使类更加易于理解和修改。

例如,可以用一个称为 Address 的新的类来替换 Customer 类中的实例域

private String street;
private String city;
private String state;
private int zip;

这样,很容易处理地址变化的问题。



#4 不是所有的域都需要独立的域访问器和域更改器

在对象中,可能包含一些不希望别人获得或设置的实例域。


#5 将职责过多的类进行分解

“单一职责原则”

如果明显地可以将一个复杂的类分解成两个更为简单的类,就应该将其分解;但不要矫枉过正。


#6 类名和方法名要能够体现出它们的职责

类和方法的命名都遵循“驼峰命名法”,但类名的首字母需要大写,如“CardDeck”,

而方法名的首字母需要小写,如“getSalary”。