隐藏与封装
隐藏
-
隐藏类的方法细节
-
便于修改,提高代码的可维护性
封装
- 将对象的成员变 和实现细节隐藏起来,不允许外部直接访问
- 把方法暴露出来,让方法来控制对这些成员变量进行安全的访问和操作
控制符
-
Java提供了3个控制符:private protected public 分别代表了3个控制级别
控制级别由大到小:private --> protected --> public
访问控制级别表
public class fengzhuang {
public static void main(String[] args) {
Person person = new Person();
person.setAge(300);
int a = person.getAge();
System.out.println(a);
}
}
class Person {
private int age;// private控制符 age只可以在同一个类中使用,在不同的类中想用age 必须借助与在跟age同一类中的方法调用;
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return this.age;
}
}
定义了上面的 Perso 类之后 该类的 age 两个成员变量只有在 Perso 类内才可以操作和访 问, Perso 类之外只能通过各自对应的 setter getter 方法来操作和访 问它们
控制符使用的几条基本原则
-
类里的绝大部分成员变量都应该使用 private 修饰,只有 static 修饰的、类似全局变 的成 员变量,才可能考虑使用 public 修饰 除此之外,有些方法只用于辅助实现该类的其他方法, 这些方法被称为工具方法 工具方法也应该使用 pnvate 修饰
-
如果某个类主要用做其他类的父类,该类里包含的大部分方法可能仅希望被其子类重写,而不 想被外界直接调用,则应该使用 protected 修饰这些方法
-
希望暴露出来给其他类自由调用的方法应该使用 public 修饰 因此,类的构造器通过使用 public 修饰,从而允许在其他地方创建该类的实例 因为外部类通常都希望被其他类自由使用,所以 大部分外部类都使用 public 修饰
-
许在其他地方创建该类的实例 因为外部类通常都希望被其他类自由使用,所以 大部分外部类都使用 public 修饰