在Java中,封裝是一種將對象的屬性和行為(方法)包裝在一個類中的方法,以保護數據和確保對象的正確使用。以下是一個簡單的Employee類示例,展示了如何實現封裝:
public class Employee {
// 私有屬性
private String name;
private int age;
private double salary;
// 構造方法
public Employee(String name, int age, double salary) {
this.name = name;
this.age = age;
this.salary = salary;
}
// 公共的getter和setter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age >= 18) {
this.age = age;
} else {
System.out.println("員工年齡必須大于等于18歲");
}
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
if (salary >= 0) {
this.salary = salary;
} else {
System.out.println("薪水不能為負數");
}
}
// 其他方法
public void work() {
System.out.println(name + "正在工作");
}
}
在這個示例中,我們創建了一個名為Employee的類,其中包含了私有屬性(name、age和salary)。我們還提供了公共的getter和setter方法來訪問和修改這些屬性。此外,我們還添加了一個構造方法來初始化對象的屬性。
通過這種方式,我們可以確保對象的屬性始終保持正確的狀態,因為我們可以在setter方法中添加驗證邏輯。這就是封裝的基本概念。