在 Java 中,private 是一种访问修饰符(access modifier),主要作用是限制访问权限,用来实现封装(Encapsulation)。
被 private 修饰的:
只能在该类内部使用,外部(包括子类)不能直接访问。
class Person {
private int age;
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return age;
}
}
public class Test {
public static void main(String[] args) {
Person p = new Person();
// p.age = 18; // ❌ 编译错误,private 不能直接访问
p.setAge(18); // ✅
}
}
防止外部随意修改内部数据,保证数据安全。
private String password;
外部必须通过方法访问,可以在方法中加校验。
通过 public 方法暴露可控的访问接口:
private int score;
public void setScore(int score) {
if (score >= 0) {
this.score = score;
}
}
外部只关心“能做什么”,不关心“怎么做的”。
private void calculate() { ... }
private 成员:
| 修饰符 | 同类 | 同包 | 子类 | 任意地方 |
|---|---|---|---|---|
| private | ✅ | ❌ | ❌ | ❌ |
| default | ✅ | ✅ | ❌ | ❌ |
| protected | ✅ | ✅ | ✅ | ❌ |
| public | ✅ | ✅ | ✅ | ✅ |
✅ 实体类属性
✅ 工具类构造方法(防止 new)
✅ 内部辅助方法
✅ 单例模式
private Singleton() {}
private 的作用是:把数据和方法“关在类里”,只通过类提供的方式访问,保证安全性和可维护性。
如果你愿意,我也可以给你讲 private 在继承、单例、反射中的特殊情况。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。