java 如何封装
封装的概念
封装是面向对象编程的三大特性之一(封装、继承、多态),指将对象的属性和行为(数据和方法)捆绑在一起,并对外隐藏内部实现细节。通过访问修饰符(如 private、protected、public)控制数据的访问权限,确保数据安全性和代码可维护性。
封装的核心步骤
定义私有属性
使用 private 修饰类的成员变量,禁止外部直接访问。例如:
private String name;
private int age;
提供公共方法(Getter/Setter)
通过 public 方法间接访问或修改私有属性,可在方法中添加逻辑控制。例如:
public String getName() {
return name;
}
public void setName(String name) {
if (name != null && !name.isEmpty()) {
this.name = name;
}
}
构造方法封装
通过构造方法初始化对象时对属性赋值,可加入验证逻辑。例如:
public Person(String name, int age) {
this.name = name;
if (age > 0) {
this.age = age;
}
}
封装的优点
- 数据保护:防止外部代码随意修改对象状态。
- 灵活性:可在方法内部修改实现而不影响调用方。
- 易于维护:集中控制数据逻辑,减少代码重复。
完整示例
public class Person {
private String name;
private int age;
public Person(String name, int age) {
setName(name);
setAge(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) {
this.age = age;
}
}
}
通过以上方式,实现了对 Person 类属性的安全封装。







