2.2.5 存取控制

将类中表示数据的成员私有化,并提供相关的存取函数。 这里指的是类的成员变量。 指的是这种情况,假如一个类中有以下三个成员变量,以C++为例:

String head;

正确的使用方式应该是:

class Human {
    private String head;
    public function readHead()
    {
    ...
    }

    public function writeHead()
    {
    ...
    }
}

对于这一条风格建议,我们可以引申一下,需要被其他类使用的变量尽量封装成单独的数据类来使用。 比如,有以下三个变量希望杯其他类使用:

String head;
String body;
String foot;

那在需要被其他类引用时,正确的提供方式应该是封装成一个类,然后提供变量值的读取函数。例如:

class Human {
    private String head;
    private String body;
    private String foot;

    public function getHead()
    {
    ...
    }

    public function getBody()
    {
    ...
    }

    public function getFoot()
    {
    ...
    }
}