首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

派生类的构造函数为何每次都要super

2013-06-26 
派生类的构造函数为什么每次都要super?本帖最后由 u010765463 于 2013-05-28 14:25:12 编辑派生类的构造函

派生类的构造函数为什么每次都要super?
本帖最后由 u010765463 于 2013-05-28 14:25:12 编辑 派生类的构造函数为什么每次都要super(派生类)?为什么每次都要调用基类的构造函数呢?不加super为什么就不行?

在c++中

class B
{
public:
B(){}
~B(){}
private:
};

class D : public B
{
public:
D(){}
~D(){}
};
int main()
{
D obj;
return 0;
}

基类初始化对象会自动调用基类相应的构造函数。
[解决办法]
派生类是针对c++里面提出的,java里面的叫继承。
java里不是非得要加上super的
[解决办法]
如果父类存在默认构造方法(就是无参数的构造方法),可以不加super的(因为调用子类的构造方法,会默认先super()的);如果父类没有默认构造方法,子类构造方法必须显示的调用super(...)

热点排行
Bad Request.