java如何封装
封装的概念
封装是面向对象编程的三大特性之一(封装、继承、多态),其核心思想是将数据(属性)和行为(方法)绑定在一个类中,并对外隐藏内部实现细节,仅暴露必要的接口供外部访问。

实现封装的方法
使用访问修饰符
Java提供四种访问修饰符控制类成员的可见性:

private:仅当前类可访问,彻底隐藏细节。protected:当前类、同包及子类可访问。默认(无修饰符):同包内可访问。public:完全公开,任何地方可访问。
public class Person {
private String name; // 私有属性,外部不可直接访问
private int age;
// 公开的getter/setter方法,控制访问逻辑
public String getName() {
return name;
}
public void setName(String name) {
if (name != null) { // 可添加校验逻辑
this.name = name;
}
}
}
通过方法暴露操作
将属性设为private后,通过公共方法(如getter/setter)提供可控的访问和修改途径。可在方法中加入校验、日志等逻辑,增强安全性。
隐藏实现细节
仅暴露必要的接口,例如工具类中的核心算法可设为private,仅通过一个public方法对外提供服务。
封装的好处
- 安全性:防止外部直接修改内部数据,避免非法值。
- 灵活性:内部逻辑修改时,不影响外部调用。
- 可维护性:代码结构清晰,易于扩展和调试。
实际应用示例
public class BankAccount {
private double balance;
public void deposit(double amount) {
if (amount > 0) {
balance += amount;
}
}
public void withdraw(double amount) {
if (amount > 0 && balance >= amount) {
balance -= amount;
}
}
public double getBalance() {
return balance;
}
}
此例中,balance被封装,存款和取款操作通过方法实现,确保数据合法性。






