可以的,Java 中的 Field(字段/成员变量)完全可以声明为 private,而且这还是非常推荐的做法。
public class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
这是 封装(Encapsulation) 的核心原则:
例如:
private int age;
public void setAge(int age) {
if (age >= 0) {
this.age = age;
}
}
这样可以防止设置非法年龄。
private 字段Field field = Person.class.getDeclaredField("name");
field.setAccessible(true);
field.set(person, "Tom");
⚠️ 反射会破坏封装,一般只在框架或工具中使用。
public static final 常量(如配置项)record)✅ Java 字段可以且经常是 private 的
✅ 推荐用 private + getter/setter 来封装数据
✅ 这是 Java 面向对象设计的基础规范
如果你是在问 反射、框架(如 Spring / MyBatis)或 record 里的字段,也可以继续问。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。