黑马程序员技术交流社区
标题:
有关抽象类中有关构造函数和其不能建立对象的困惑
[打印本页]
作者:
静以修身
时间:
2013-8-17 21:00
标题:
有关抽象类中有关构造函数和其不能建立对象的困惑
本帖最后由 静以修身 于 2013-8-17 22:50 编辑
抽象类中是否有构造函数?有,是用于给对象进行初始化的。想问能进行初始化,但不能建立对象,是已经
固定了的规则么,其原理是怎样的啊?
作者:
张洪慊
时间:
2013-8-17 21:12
本帖最后由 张洪慊 于 2013-8-17 21:24 编辑
<div class="blockcode"><blockquote>
例如:我简单的想到:抽象类的构造函数也可以用于初始化子类的成员属性
abstract class Animal{
private String animalName;
protected Animal(String animalName){
this.animalName=animalName;
}
}
class Dog extends Animal{
private String dogName;
public Dog(String animalName){
super(dogName);
}
}
</blockquote></div><br />
作者:
静以修身
时间:
2013-8-17 22:19
张洪慊 发表于 2013-8-17 21:12
例如:我简单的想到:抽象类的构造函数也可以用于初始化子类的成员属性
abstract class Animal{
private ...
抽线类的构造函数只能初始化自己的属性吧!super(dogName),初始化的是从父类继承过来的属性animalName,而不是初始化子类的属性,初始化子类的属性应该在父类的构造函数下面再加上一句this.dogName=dogName,应该是这样的吧
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2