java中 set 和 get方法有什么作用,为什么要用get和set?本人初学者,对这个比较模糊,谢谢大神解答!
set可以设置值,get可以获取值,该属性一般为private的
这样方便其他类使用时查找和修改某个属性,并且这样的修改是可以被看到的
毕竟一个普通的例如user.name="xxx"这样的语句很难被其他人其他程序发现
而set方法作为一个方法是可以被控制和方便调用的
我也是新手 说下我的理解:
这里的get和set只是起到封装的作用
其实和普通的方法够造差不多
之所以方法名用get和set是为了符合标准 你完全可以用其他名字代替
只不过当变量被private修饰之后你就不能直接引用了 而是通过: 方法名.变量 来引用所引用类中的变量
回复 慕男婶:
public class OK5 {
public String name;
public String brithday;
public int number;
public void setName(String name){
this.name=name;
}
public void setBrithday(String brithday){
this.brithday=brithday;
}
public void setNumber(int number){
this.number=number;
}
public String getName(){
return this.name;
}
public String getBrithday(){
return this.brithday;
}
public int getNumnber(){
return this.number;
}
public static void main(String[]args){
OK5 student=new OK5();
student.setName("花花");
student.setBrithday("1987-11-11");
student.setNumber("154895");
student.getName();
student.getBrithday();
student.getNumber();
}
}
在 main方法里 setNumber() 和getNumber() 报错 怎么回事啊?
set,意思是 设置 ,用于给对象填充值(设置值)
get,意思是 获取,用于获取对象的值
例如:
public class Student{ public String name;// 学生姓名 public String birthday;// 学生生日 public int number;// 学生学号 // 设置学生的姓名 public void setName(String name){ this.name = name; } // 获取学生的姓名 public int getName(){ return this.name; } // 设置学生的生日 public void setBirthday(String birthday){ this.birthday = birthday; } // 获取学生的生日 public int getBirthday(){ return this.birthday; } // 设置学生的学号 public void setNumber(int number){ this.number = number; } // 获取学生的学号 public int getNumber(){ return this.number; } public static void main(String[] args){ Student student = new Student(); student.setName("雪野冰狼");// 把姓名填充到对象中 student.setBirthday("1992-10-13");// 把生日填充到对象中 student.setNumber("20161216");// 把学号填充到对象中 // 设置完之后,这个对象中的属性就有值了,下面就可以尽情使用了 student.getName(); student.getBirthday(); student.getNumber(); } }
set是设置的意思,而get是获取的意思,顾名思义,这两个方法是对数据进行设置和获取用的。而且,在类中使用set和get方法时,都是在set和get后面跟上一些特定的词来形成特定意思的方法名,比如setage()和getage(),表示设置年龄和获取年龄。