2 qq 34899034 qq_34899034 于 2016.05.09 08:01 提问

java为什么父类没有有参构造,子类可以通过有参构造来访问父类的变量

java为什么父类没有有参构造,子类可以通过有参构造来访问父类的变量

8个回答

wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.05.09 08:24

首先,继承体系中父类的私有变量,子类是不能访问的,子类只能访问父类的protected\public修饰的成员变量;
其次,父类的成员变量如果提供了getter/setter方法,子类才能通过这些方法来访问父类的成员变量的。
至于你说的问题,构造函数的作用只是创建实例时初始化成员变量的,在构造函数中成员变量都是初始默认值,“子类可以通过有参构造来访问父类的变量”这句话也是没有根据的。继承体系中最重要的就是成员变量的访问权限的问题了。有权限才能访问,否则都是错误的。

zyf4005
zyf4005 帮忙看个问题吧http://ask.csdn.net/questions/254535
一年多之前 回复
CSDNXIAON
CSDNXIAON   2016.05.09 08:12

一段代码解析JAVA父类子类构造过程
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

l_vaule
l_vaule   2016.05.09 08:12

因为super了父类无参的构造方法

sl_18500
sl_18500   2016.05.09 09:28

一楼回复的很详细了,并不是说 子类可以通过有参构造来访问父类的变量

zyf4005
zyf4005   2016.05.09 09:28

因为子类继承了父类,只要是父类中被public或者protected修饰的变量都能被子类的成员(子类的有参构造函数当然属于子类的成员了)访问。

donggua3694857
donggua3694857   Rxr 2016.05.09 09:43

一楼说得很好,看访问权限

tanjunchen
tanjunchen   2016.05.09 16:25

访问权限 与 构造函数的定义 super关键字

ljheee
ljheee   Rxr 2016.05.10 21:32

子类可以通过有参构造来访问父类的变量 ,因为这些变量是从父类那继承来的,就相当于自己的了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!