黑马程序员技术交流社区

标题: 继承 [打印本页]

作者: 404951246    时间: 2016-4-2 21:33
标题: 继承
一个类有很多父类,那么放子类对象创建的时候,它的父类的构造方法都会执行吗?
作者: 小灰辉    时间: 2016-4-2 21:51
对啊 , 子类 先初始化之前 必须 初始化 父类
作者: Hawking    时间: 2016-4-2 22:23
本帖最后由 Hawking 于 2016-4-2 22:24 编辑

不对,
首先java不支持多重继承,也就是说子类至多只能有一个父类!!!
1.子类只继承父类的默认(缺省)构造函数,即无形参构造函数。如果父类没有默认构造函数,那子类不能从父类继承到任何构造函数。
2、子类从父类处继承来的父类默认构造函数,不能成为子类的默认构造函数。
3、在创建对象时,先调用父类默认构造函数对对象进行初始化,然后调用子类自身自己定义的构造函数。  4、如果子类想调用父类的非默认构造函数,则必须使用super来实现。
5、子类必须调用父类的构造函数。可以通过系统自动调用父类的默认构造函数,如果父类没有默认构造函数时,子类构造函数必须通过super调用父类的构造函
作者: 1833495284    时间: 2016-4-2 23:21
我看上面说的很全面,我就不滥竽充数了。就是水个经验
作者: 昵称又被占用    时间: 2016-4-2 23:36
2楼说的很全面了,况且怎么可能有多个父类呢?
作者: 性感不是骚    时间: 2016-4-2 23:49
你说的多个父类是多层继承还是多继承,类不支持多继承
作者: zuiaidasde2016    时间: 2016-4-2 23:53
一个类只能有一个父类
作者: 兵蜂    时间: 2016-4-2 23:56
java不同于C++,应该不可以多继承类,我还没学到呢,嘿嘿
作者: zhoubinjian    时间: 2016-4-3 00:39
二楼,,哈,,,
作者: huhemingtiancai    时间: 2016-4-3 00:50
肯定啊,你不写系统也帮你执行
作者: 404951246    时间: 2016-4-4 14:31
小灰辉 发表于 2016-4-2 21:51
对啊 , 子类 先初始化之前 必须 初始化 父类

哦                                      
作者: 404951246    时间: 2016-4-4 14:32
Hawking 发表于 2016-4-2 22:23
不对,
首先java不支持多重继承,也就是说子类至多只能有一个父类!!!
1.子类只继承父类的默认( ...

说的真好,谢谢
作者: 404951246    时间: 2016-4-4 14:35
昵称又被占用 发表于 2016-4-2 23:36
2楼说的很全面了,况且怎么可能有多个父类呢?

我意思多层继承                                    
作者: 404951246    时间: 2016-4-4 14:36
性感不是骚 发表于 2016-4-2 23:49
你说的多个父类是多层继承还是多继承,类不支持多继承

我说的是多层继承,                              
作者: 404951246    时间: 2016-4-4 14:37
zuiaidasde2016 发表于 2016-4-2 23:53
一个类只能有一个父类

应该是一个直接父类,我说的是多层继承,包含他的间接父类
作者: 昵称又被占用    时间: 2016-4-7 14:05
它可以有爷爷,曾爷爷的,多层可以的
作者: Love丶cd    时间: 2016-4-7 14:43
在java里只支持单继承,但当出现A extends B{}    C extends A{}这样的程序时,C的子类对象是会执行B中的对应的相同参数的构造方法的。
作者: IT农民工的日常    时间: 2016-4-7 14:46
支持单继承 和多层继承 ,默认执行父类无参构造方法
作者: lidandan    时间: 2016-4-7 15:45
no no no
你得问题好像就有问题
一个类只能有一个父类
作者: IT小笨鸟    时间: 2016-4-7 16:16
Java中只能有一个父类,2楼说的很详细,不错




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