黑马程序员技术交流社区
标题:
方法私有化问题
[打印本页]
作者:
沙子
时间:
2014-12-17 19:36
标题:
方法私有化问题
问题5:父类的成员变量私有化之后,子类依然继承,但不能直接访问,那么该如何访问?
作者:
清诗纪事
时间:
2014-12-17 19:57
定义方法
private String name;
public void getName(String name){
this.name=name;
}
this指的是调用的那个对象。new一个对象之后调用getName方法就可以访问
作者:
duluhua
时间:
2014-12-17 20:12
对于私有的成员变量,一般都是使用public的get和set方法来进行访问。
父类:
package test;
public class Test {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
子类:
package test;
public class Test2 extends Test {
public static void main(String[] args) {
Test2 t = new Test2();
t.setName("aaa");
System.out.println(t.getName());
}
}
对于父类私有的成员不能在父类外访问,但是可以使用父类的共有方法来访问。就是get和set
作者:
qig123
时间:
2014-12-17 22:02
如果该成员变量需要共享,那么可以定义为静态变量,直接用类名访问
如果是普通成员变量,那就写个get方法,set方法访问。
实际上,一但被定义为私有成员变量,就一定要有public修饰的成员方法来访问,这是设计一个类的基本原则规范。
作者:
Honelyboy
时间:
2014-12-17 22:10
那就在父类中定义函数去访问父类的成员变量。
作者:
jxlovqqvo
时间:
2014-12-17 22:12
父类的私有,子类就算继承了也没用,打个比方:你爸把他的财产能继承给你,他能把他的知识继承给你么,肯定不行啊
作者:
I空空
时间:
2014-12-18 00:20
写一个public的调用该成员变量的方法即可,参考单例模式
作者:
天才小熊猫
时间:
2014-12-18 18:05
this and base
作者:
董晗
时间:
2014-12-18 18:23
6楼回复亮了
作者:
I空空
时间:
2014-12-19 23:01
写个public方法
作者:
7788665544
时间:
2014-12-19 23:30
定义一个public方法,通过这个方法再来调用
作者:
严晗哲
时间:
2014-12-19 23:31
要访问父类的私有化成员,只能通过父类提供的方法访问,如果没有提供方法就无法访问。
作者:
找寻小龙猫
时间:
2014-12-19 23:32
六楼好精辟,……
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2