在 Java 中,“封装(Encapsulation)” 是面向对象编程(OOP)的四大特性之一,核心思想是:
把对象的属性隐藏起来,只通过公共的方法来控制对属性的访问和修改。
class Person {
String name;
int age;
}
❌ 外部可以直接修改,不安全
Person p = new Person();
p.age = -100; // 不合理
public class Person {
// 1. 属性私有
private String name;
private int age;
// 2. 提供 getter
public String getName() {
return name;
}
public int getAge() {
return age;
}
// 3. 提供 setter(可加校验)
public void setName(String name) {
if (name != null && !name.isEmpty()) {
this.name = name;
}
}
public void setAge(int age) {
if (age >= 0 && age <= 150) {
this.age = age;
} else {
System.out.println("年龄不合法");
}
}
}
public class Test {
public static void main(String[] args) {
Person p = new Person();
p.setName("张三");
p.setAge(20);
System.out.println(p.getName());
System.out.println(p.getAge());
}
}
✅ 隐藏实现细节
✅ 提高安全性
✅ 方便后期维护
✅ 可以在赋值/取值时做控制
private 属性 + get/setpublic Person(String name, int age) {
setName(name);
setAge(age);
}
Java 封装 = private 属性 + public 方法 + 控制逻辑
如果你是想问 “接口封装 / 模块封装 / 服务封装”,也可以告诉我,我可以给你更具体的例子(如 Spring、API、工具类封装等)。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。