黑马程序员技术交流社区
标题:
关于类中的get***和set***
[打印本页]
作者:
黑马连家华
时间:
2012-2-28 21:16
标题:
关于类中的get***和set***
本帖最后由 Noword 于 2012-2-28 21:30 编辑
class PersonAge
{
private int age
public void setAge (int a)
{
if (a > 0 && a< 150)
{ age = a;
speak();
}
else
System.out.println("Wrong age");
}
void speak()
{
System.out.println("age="+age);
}
public int getAge ()
{
return age;
}
}
不知道这个getAge()方法有什么用呢?跟setAge有什么关系?
作者:
刘基军
时间:
2012-2-28 21:23
由于age被private修饰,根据修饰符的访问权限,在PersonAge类外,是无法直接使用age成员。而这时可以通过调用getAge()方法来获得age(getAge()是public修饰)
作者:
黑马连家华
时间:
2012-2-28 21:29
刘基军 发表于 2012-2-28 21:23
由于age被private修饰,根据修饰符的访问权限,在PersonAge类外,是无法直接使用age成员。而这时可以通过调 ...
跟我想的差不多,得到肯定了,我也就能放心地记下了~
作者:
冯兵兵
时间:
2012-2-28 22:00
为了提高程序的封装性和安全性,由于类中的成员被private修饰,这样在其他类中就无法直接访问和修改类中的成员。(个人见解)
作者:
丁晓宇
时间:
2012-3-1 12:28
封装 - 把属性私有化,提供共有访问方法,真正项目里的业务不必写在getter&setter中,因为会有相应的业务层根据业务来控制属性的。
作者:
胡军喜
时间:
2012-3-1 17:25
本帖最后由 胡军喜 于 2012-3-1 17:26 编辑
你的类中有age这个私有属性,这个属性只能本类可以访问,提供了getAge()和setAge()方法后,就可以通过这两个方法来操作类的age属性。
要不然,你又写了age属性,又不让外部类来操作它,那你写它有什么作用?
作者:
a504079589
时间:
2012-3-1 18:53
PersonAge类中的age被限制了访问权限 private为私有的! 无法从别的类中直接调用 要提供一个能调用的方法 get() set() 把这些属性封装在PersonAge的类中 要想调用此类中的属性就要通过get()方法来调用 可以通过set()方法设定参数!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2