首页 > 代码库 > Java中属性和字段的区别 ,很多人都分不开吗.尤其是反射技术之上的mybatis,spring配置,jstl 标签

Java中属性和字段的区别 ,很多人都分不开吗.尤其是反射技术之上的mybatis,spring配置,jstl 标签

Java中的属性,通常可以理解为其属名性时根据get和set方法名得出的。

而字段,通常叫做“对象成员”。

其规则是:去掉get或set后其剩余的字符串,如果第二个字母是小写的,则把第一个字母也变成小写

getAge---->age

getCPU---->CPU


属性只局限于类中方法的声明,并不与类中其他成员相关,属于javabean的范畴。例如:
void setA(String s){}
String getA(){}
当一个类中拥有这样一对方法时,我们可以说,这个类中拥有一个可读写的a属性(注意是小写a)。如果去掉了set的方法,则是可读属性,反之亦然。
比如有下面这个类:
public class Person {
 private int x;
 public int getAge(){
  return x;
 }
 public void setAge(int age){
  this.x=age;
 }
}

当我操作这个类时,比如调用getAge()方法时,我们要说是获得age属性,调用setAge方法时要说设置age属性,因为对我们来说x字段是私有的,我们操作该Person类时根本看不到有这个x字段

对于mybatis 映射配置文件,里面的

<resultMap type="Author" id="baseResultMap">
		<id property="id" column="id"/>
		<result property="username" column="username"/>
		<result property="password" column="password"/>
		<result property="email" column="email"/>
		<result property="bio" column="bio"/>
		<result property="favouriteSection" column="favourite_section"/>
	</resultMap>

这些
property指的是属性,不是字段.
还有jsp标签库在jsp页面的使用,也是指属性,不是字段..

Java中属性和字段的区别 ,很多人都分不开吗.尤其是反射技术之上的mybatis,spring配置,jstl 标签