什麼是封裝
封裝(Encapsulation):是指隱藏對象的屬性和實現細節,僅對外提供公共的訪問方式
封裝的好處
1、將變化隔離,類內部的結構可以自由修改
2、便於使用
3、提高代碼複用性
4、提高代碼安全性
5、減少代碼耦合
6、可以對成員變量進行更精確的控制
封裝原則
1、將不需要對外提供的內容都隱藏起來
2、把屬性都隱藏,提供公共方法對其訪問
實現Java封裝的步驟
1、修改屬性的可見性來限制對屬性的訪問(一般限制爲private)。 如:
public class Person {
//私有僅僅是封裝的一種表現形式
private String name;
private int age;
}
上面代碼中,將 name 和 age 屬性設置爲私有的,只能本類才能訪問,其他類都訪問不了,如此就對信息進行了隱藏
2、對每個屬性提供對外的公共方法訪問,也就是創建一對賦值取值方法,用於對私有屬性的訪問。 如:
public class Person{
private String name;
private int age;
public int getAge(){
return age;
}
public String getName(){
return name;
}
//this 關鍵字是爲了解決實例變量(private String name)和局部變量(setName(String name)中的name變量)之間發生的同名的衝突
public void setAge(int age){
this.age = age;
}
public void setName(String name){
this.name = name;
}
}