A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 乔攀 中级黑马   /  2012-12-1 23:38  /  1304 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

关于get/set方法 它们执行了什么 返回的什么  获取的是什么 求解答

2 个回复

正序浏览
java程序一般将A类的属性修饰符设置为private,这是为了更好的封装数据。要想在B类里引用该属性,就可以在A类里定义修饰符为public的set,get方法以设置和获取private型的属性值,这么理解吧,面向对象中,想对类的成员变量设置访问一些权限,于是,就将该字段设置为private的,这样别的类就不能访问了,然后在该内定义两个方法,一个专门用于获取,一个用于修改,这样,在你不想让别人乱动该字段的时候,就在该方法内写一些限制条件。
而为了规范起见(团队开发需要嘛),就根据人家老外的习惯,将方法名设置为set+字段名,get+字段名(名字乱改没问题),既然规范了,那就是别人都叫这名了,于是,有些框架给对象赋值就有方法了,方法名称由get或set开始的又有private变量名的,就找出来调用。
回复 使用道具 举报
set和get方法一般是用来给类的成员变量赋值的,由于类的成员变量一般会声明为private的,其他的类是不能直接访问成员变量的,所以为了在类以外给该类的成员变量赋值或者取值,只有用声明为public的set和get方法来实现set和get方法是用于封装的 所以一般只在private中用 当然你如果不是在private中用也没关系 代码也是可以执行的 .
get用于取得属性的值,set用于给属性赋值
例如:
class Aa {
private String a1;

public setA1(String a1) {
this.a1 = a1;
}
public String getA1() {
  return this.a1;
}
}

class Amain {
  public static void main(String[] args) {
       Aa aa = new Aa();
       aa.setA1("为aa赋一个值");    //用于赋值
   
    String a1 = aa.getA1();  // 取得属性的值
    System.out.println(a1);
}
}

评分

参与人数 1技术分 +1 收起 理由
杨千里 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马