java面向對象特征之一:封裝與隐藏
-
-
- 1.為什麼要封裝與隐藏
- 2.操作過程可能出現的情況
- 3.利用封裝性思想的解決方案
- 4.demo
1.為什麼要封裝與隐藏
- 使用者對類内部定義的屬性(對象的成員變量)的直接操作會導緻資料錯誤,混亂或安全性問題。
- 解決方法:将類的屬性保護起來,防止亂用。
- 保護的方式:資訊隐藏
2.操作過程可能出現的情況
- 當建立了類的對象以後,如果直接通過“對象.屬性”的方式對相對應的對象屬性指派的話,可能會出現于實際情況相違背的意外,故,不考慮讓對象來直接作用于屬性,而是通過“對象.方法”的方式,來控制對象對屬性的通路、指派等操作等,對屬性的要求可以通過方法來展現。
3.利用封裝性思想的解決方案
- 将類屬性私有化
- 提供公共的方法(setter & getter)來實作調用。提供公共的方法(setter & getter)來實作調用。
4.demo
public class Test {
public static void main(String[] args) {
Person person = new Person();
person.setAge(2);
int age = person.getAge();
System.out.println("age:"+age);
}
}
public class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}