封装是通过将属性设为private并提供public的getter和setter方法来实现,可在方法中加入数据验证逻辑,如Person类中对name和age的合法性检查,从而保护数据安全并提升代码可维护性。
封装是面向对象编程的三大基本特征之一,它指的是将对象的属性和行为(方法)捆绑在一起,并对外隐藏内部实现细节。在Java中,封装的核心目的是提高安全性、增强代码的可维护性,并降低外部对对象内部状态的直接干预。
封装通过限制对类成员的直接访问来保护数据。通常,类的字段(成员变量)被设置为私有(private),只能通过公共(public)的方法进行读取或修改。这样可以在方法中加入逻辑控制,比如数据校验,防止非法赋值。
在Java中实现封装,主要遵循以下几个步骤:
public class Person {
private String
name;
private int age;
// Getter 方法
public String getName() {
return name;
}
// Setter 方法
public void setName(String name) {
if (name != null && !name.isEmpty()) {
this.name = name;
} else {
System.out.println("姓名不能为空");
}
}
public int getAge() {
return age;
}
public void setAge(int age) {
if (age >= 0 && age <= 150) {
this.age = age;
} else {
System.out.println("年龄必须在0到150之间");
}
}
}
使用封装后,代码更加健壮和灵活: