java如何封装类
封装类的基本概念
封装是面向对象编程的三大特性之一,通过隐藏对象的属性和实现细节,仅对外公开接口来控制访问级别。在Java中,封装主要通过访问修饰符(private、protected、public)和Getter/Setter方法实现。

使用访问修饰符控制可见性
private:仅限当前类内部访问,外部无法直接修改或读取。protected:允许当前类、子类及同包类访问。public:完全公开,任何类均可访问。
示例:

public class Person {
private String name; // 私有属性
private int age;
// 公有方法作为访问接口
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
提供Getter和Setter方法
通过公有方法间接访问私有属性,可加入逻辑验证。
public class Person {
private int age;
public int getAge() {
return age;
}
public void setAge(int age) {
if (age > 0) { // 数据校验
this.age = age;
} else {
System.out.println("年龄无效");
}
}
}
封装的优势
- 数据安全:防止外部直接修改属性,避免非法值。
- 灵活性:内部逻辑修改不影响外部调用。
- 易于维护:隐藏实现细节,降低耦合度。
完整示例
public class BankAccount {
private String accountNumber;
private double balance;
public String getAccountNumber() {
return accountNumber;
}
public void setAccountNumber(String accountNumber) {
this.accountNumber = accountNumber;
}
public double getBalance() {
return balance;
}
public void deposit(double amount) {
if (amount > 0) {
balance += amount;
}
}
public void withdraw(double amount) {
if (amount > 0 && balance >= amount) {
balance -= amount;
}
}
}
注意事项
- 避免过度封装,非必要属性可直接使用
public。 - 对于不可变属性(如ID),可仅提供Getter方法。






