java如何封装类
封装类的基本概念
封装是面向对象编程的三大特性之一(封装、继承、多态),核心思想是将数据(属性)和行为(方法)捆绑在一起,并对外隐藏内部实现细节,仅通过公开的接口与外部交互。
实现封装的步骤
定义私有属性
使用 private 关键字修饰类的属性,限制外部直接访问:
private String name;
private int age;
提供公开的访问方法
通过 public 的 getter 和 setter 方法控制对属性的读写:
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
添加逻辑校验
在 setter 方法中加入条件判断,确保数据有效性:
public void setAge(int age) {
if (age > 0) {
this.age = age;
} else {
System.out.println("年龄无效");
}
}
封装的优点
- 数据安全性:防止外部直接修改属性,避免非法值。
- 灵活性:内部实现可修改而不影响外部调用。
- 易于维护:逻辑集中在类内部,降低耦合度。
完整示例代码
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) {
if (age > 0) {
this.age = age;
}
}
}
高级封装技巧
- 不可变类:属性用
final修饰,仅提供 getter 方法(如String类)。 - Builder 模式:通过链式调用构造复杂对象,避免 setter 泛滥。
- 访问权限控制:结合
protected和包权限,实现更细粒度的封装。
通过合理使用封装,可以显著提升代码的健壮性和可维护性。







