封装是指将类的实现细节隐藏起来,只对外部公开有用的方法和属性。封装可以提高代码的安全性、可读性和可维护性。
在 Java 中,可以使用访问修饰符来限制类、属性和方法的访问范围。Java 中有四种访问修饰符:
public:公开的,可以被任何类访问。protected:受保护的,只能被当前类、子类和同一包中的类访问。default:默认的,只能被同一包中的类访问,省略访问修饰符时,默认为该修饰符。private:私有的,只能被当前类访问。下面是一个封装示例,其中 Student 类封装了 name 和 age 两个属性,只对外部公开了 getName() 和 getAge() 两个方法:
public class Student {
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) {
this.age = age;
}
}在上面的代码中,name 和 age 属性被声明为 private,只能在 Student 类内部访问。对外部提供了 getName() 和 getAge() 方法来获取属性值,同时提供了 setName() 和 setAge() 方法来设置属性值。由于属性是被封装的,外部无法直接访问,只能通过方法来访问。
封装可以提高代码的安全性、可读性和可维护性。具体来说,封装的优点有: