在Effective Java的第4章第15条第16条中,讨了使类和成员的可访性最小化以及在公共类中使用访问方法不是公共属性。本篇学习记录将总结并展这些主题,以帮助自己理解为要使用这些技巧,并提供一些示例代码。
、使类和成员的可访问性最小化
Java中,访问修饰符(如public、protected、private用来规定类和类成员的可访问性。而,过度公共化会破坏封装性,增了类被误用或滥用的风险。因此,应该将类和成员的可访问性限制在小范围内。
以下是将类和成员的可访性最小化的示例代码:
public class Person private String name;
private int age;
// 构造方法其他代码省略
public String getName() {
return name;
}
public int getAge() {
return age;
}
其他方法省略
}
在上述代码中,将name和age字段声明为private,使其只能在Person内部访问。同时,我们提供了访问方法getNamegetAge,用于获取name和age字段的值。通过这方式,我们可以控制对类内部实现的访问提供必要的访问接口。
二、在公共中使用访问方法而不是公共属性
在设计公类时,应该限制对类内部数据的直接问,并使用访问方法来提供对数据的访问和。这样做的好处是,我们可以在不改变的内部表示的情况下,对访问方法进行优和修改,同时保公共接口的稳定性。
是在公共类中使用访问方法而不是公共的示例代码:
public class Person {
private String;
private int age;
// 构造方法和其他代码省
public String getName() {
return name;
}
public setName(String name) {
this.name = name;
}
public getAge() {
return age;
}
public void setAge age) {
this.age = age;
}
// 其他省略
}
在上述代码中,我们使用了问方法getName、setName、getAge和setAge来获取和更新和age字段的值。通过这种方式,我们可以在不变类的内部表示的情况下,对访问方法优化和修改。
通过本篇学习记录,我们了解了使类和成员的可访问性最小化以在公共类中使用访问方法而不是公共属性重要性。通过限制可访问性和使用访问,我们可以提高代码的封装性和可维护性同时减少类被误用的风险。