黑马程序员技术交流社区

标题: 继承中的 只读属性的问题 [打印本页]

作者: 张振    时间: 2013-3-29 14:24
标题: 继承中的 只读属性的问题
本帖最后由 张振 于 2013-3-30 22:33 编辑

学了继承之后 我想了构造方法中的一些问题
父类  公共
继承的子类 Student
输出的项目中
最后得到的是 只读属性 不能赋值
我没有赋值啊 我在项目中是用构造方法来进行传值得
我把公共类去掉 还原 又可以了 为什么继承之后构造方法反而不能传值了
没有继承的 时候  不能赋值 但构造是可以传值得啊

运行后说 Name只读属性不能赋值
可是不用继承 就不用出现

未命名1.jpg (57.4 KB, 下载次数: 22)

子类

子类

未命名.jpg (70.42 KB, 下载次数: 15)

未命名.jpg

作者: 黄林    时间: 2013-3-29 17:13
因为你设定Name属性是只读的,就算是在父类的构造函数中依然是不能给它赋值,只能给name字段赋值;子类继承父类,会继承父类所有成员以及它们的访问级别,所以子类中仍然是不能给Name属性赋值,这跟在子类中定义的一个只读的Name属性是一样的
作者: 王杨武    时间: 2013-3-29 17:39
因为是继承  父类有的公用的东西你全部都拥有   父类的状态是什么就是什么  。不能改变的  继承不是抽象类  抽象类可以重写。继承不可以




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2