getter和setter
Posted wxlmdx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了getter和setter相关的知识,希望对你有一定的参考价值。
getter 和setter
-
子类中为什么要写get和set方法获取释放数据,不写会怎样?在什么情况下要用getter和setter? getter通常与一个私有的实例变量对应,用于返回该变量的值
public int getXxxx()
{
return "相应的实例变量";
}
setter通常与一个私有的实例变量对应,用于设置该变量的值
public void setXxxx(类型参数)
{
实例变量=参数;
}
其中 setXxx的参数类型通常要跟相应的实例变量类型相同。
通常,将实例变量私有化,并为其提供相应的getter和setter。
将实例变量私有化是为了隐藏类的实现细节,不对外暴露。
如果期望外部还能访问私有的实例变量,可以为其提供相应的getter和setter。
如果不期望外部能访问私有变量,则不需要提供相应的getter和setter。
如果父类中存在私有的实例变量,期望子类能够访问,则父类需要为这些实例变量提供相应的getter和setter。
-
如果成员变量是public修饰,还需要get和set方法吗? 不需要要,因为可以直接访问。
-
那为什么非要将成员变量私有化再提供getter和setter?
private intage;//字段(field)
public int getNianLing()
{
return age;
}getNianLing()->去掉get和参数部分->NianLing NianLing->将首字母变小写->nianLing 这里得到的
nianLing
就是属性(property)private int x;//字段(field)
public int getAge()
{//实例变量x对应的getter
returnx;
}getAge()->去掉get和参数部分->Age->将首字母变小写->age 这里得到的age就是属性(property)
以上是关于getter和setter的主要内容,如果未能解决你的问题,请参考以下文章