類(lèi)的封裝是面向?qū)ο缶幊讨械囊粋€(gè)重要概念,它指的是通過(guò)控制類(lèi)成員的訪問(wèn)權(quán)限,保證類(lèi)的安全性和穩(wěn)定性。在Java中,封裝可以通過(guò)以下方式實(shí)現(xiàn):
1.使用訪問(wèn)修飾符
Java提供了3種訪問(wèn)修飾符,即public、protected、private。其中,public修飾的成員可以被任意類(lèi)訪問(wèn);protected修飾的成員可以被當(dāng)前類(lèi)、子類(lèi)和同一個(gè)包中的其他類(lèi)訪問(wèn);private修飾的成員只能被當(dāng)前類(lèi)訪問(wèn)。
2.使用getter和setter方法
getter和setter方法可以讓類(lèi)的成員變量可以被其他類(lèi)訪問(wèn)和修改,同時(shí)可以通過(guò)方法中添加邏輯來(lái)控制對(duì)成員變量的訪問(wèn)和修改。
下面是一個(gè)示例:
public class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
if (name != null && !name.isEmpty()) {
this.name = name;
}
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age >= 0 && age <= 120) {
this.age = age;
}
}
}
在上述示例中,name和age成員變量被聲明為private,通過(guò)getName和setName、getAge和setAge方法來(lái)控制對(duì)它們的訪問(wèn)和修改,并添加了一些邏輯來(lái)控制輸入值的合法性。
通過(guò)封裝,我們可以將類(lèi)的實(shí)現(xiàn)細(xì)節(jié)隱藏起來(lái),只暴露必要的接口給外部使用,從而提高代碼的可維護(hù)性和可擴(kuò)展性。