Java: 成员变量和属性的区别
有一个类如下定义:
public class User {
private int id ;
private String username;
private String password;
private String gender;
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
", gender='" + gender + '\'' +
'}';
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getHehe() {
return gender;
}
public void setHehe(String gender) {
this.gender = gender;
}
}
分析
成员变量是:username、 password、gender
而属性是:username、password、hehe
关于如何知道什么是属性:
setteri和getter方法截取后的产物
例如:getusername()-->Username->username
(所以上面gender的set和get方法特意设置不一样的名字来加以区分)
补充BeanUtils的一个方法populate: populate(参数一是个对象,参数二是map)将map集合的键值对信息,封装到对应的们avaBean对象中,map键是属性名称,map值为属性值
参考黑马,侵删