[JAVASE] 类和对象 -- 封装
在面向对象的编程中,封装是一个重要的概念,它指的是将对象的状态(数据)和行为(方法)打包在一起,隐藏对象的内部实现细节,只提供公开的接口(getter和setter方法)来与对象进行交互。
封装的好处有:
- 隐藏实现细节,提供抽象层次,便于使用。
- 提高代码的可维护性和可复用性。
- 提供了安全性,可以通过访问控制(如private、protected、public修饰符)来限制对象的属性和方法的访问权限。
以下是一个简单的Java类,它展示了封装的概念:
public class Person {
// 私有属性,外部无法直接访问
private String name;
private int age;
// 构造方法
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// getter方法,用于获取私有属性的值
public String getName() {
return name;
}
public int getAge() {
return age;
}
// setter方法,用于设置私有属性的值
public void setName(String name) {
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
}
// 使用Person类的示例
public class Main {
public static void main(String[] args) {
Person person = new Person("Alice", 30);
// 通过getter方法获取属性值
System.out.println("Name: " + person.getName());
System.out.println("Age: " + person.getAge());
// 通过setter方法设置属性值
person.setName("Bob");
person.setAge(35);
// 再次获取更新后的属性值
System.out.println("Name after update: " + person.getName());
System.out.println("Age after update: " + person.getAge());
}
}
在这个例子中,Person
类的属性name
和age
被声明为私有(private),只能通过公开的getter
和setter
方法访问和修改它们的值。这样做可以保护数据不受无意或恶意的修改,同时提供了一个接口来安全地与对象的属性进行交互。
评论已关闭