在 Java 中,private 字段是私有的,不能直接通过对象在外面访问或赋值,但可以通过类内部的方法来赋值。常见方式有下面几种:
public class User {
private String name;
// 构造方法
public User(String name) {
this.name = name;
}
}
使用:
User user = new User("张三");
public class User {
private String name;
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
使用:
User user = new User();
user.setName("李四");
public class User {
private String name = "默认值";
}
或在方法中:
public class User {
private String name;
public void init() {
name = "初始化值";
}
}
import java.lang.reflect.Field;
User user = new User();
Field field = User.class.getDeclaredField("name");
field.setAccessible(true);
field.set(user, "王五");
⚠️ 破坏封装,一般不推荐使用。
@Data
public class User {
private String name;
}
自动生成 getter / setter。
✅ 正确方式:构造方法 / setter
❌ 错误方式:直接 user.name = "xx"(编译报错)
如果你是在 Spring / MyBatis / JSON 解析 等场景,也可以告诉我,我可以给你更具体的写法。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。