黑马程序员技术交流社区

标题: 多继承和多实现的区别 [打印本页]

作者: 范泰洋    时间: 2012-7-18 00:14
标题: 多继承和多实现的区别
java 多继承和多实现的区别
作者: 王龙彪    时间: 2012-7-18 00:16
一个类只能继承一个父类,但可以实现多个接口

作者: 康大玮    时间: 2012-7-18 00:21
Java 只支持单继承 多实现 . 若想实现 多继承, 可以使用内部类
继承的必须是一个类, 此类不可终态, 可以是抽象类
实现的必须是接口. 可以实现多个接口

作者: 京鱼龙    时间: 2012-7-18 00:46
首先要记住他们的关系。

类与类之间是继承关系,      是单继承
类与接口之间是实现关系,    可以多实现
接口与接口之间是继承关系,而且可以多继承。

说白了,多继承和多实现就是类与类和类与接口之间的区别。
接口可以被多实现,而类只能单继承,但是一个类可以实现多个接口。
作者: 位雪    时间: 2012-7-18 01:05
首先指出一个错误:java只支持单继承,但支持多层继承,支持多实现,可以实现多个接口
最大区别是:继承Thread类:线程代码存放在Thread子类run方法中
            实现Runnable接口:线程代码存放在接口子类run方法中
继承的同时也可以实现接口,对外提供了功能性的扩展,还可以被多线程操作,实现方式避免了单继承的局限性,建议定义线程时使用实现方式
其实Thread类本身也实现Runnable
作者: 乞文超    时间: 2012-7-18 01:07
java只能单继承,没有多继承,一个类之能有一个父类,但是可以多实现!继承是指继承某个类,实现是指实现某个接口!

1、Java中一个类不能继承多个具体class。

2、一个类只可继承自一个具体 class,但可实现多个接口。
   interface不涉及到实现细节,不与任何存储空间有关连。
   可以实现合并多个 interface ,达到可向上转型为多种基类的目的。
   新类可继承自一个具象class,其余继承都得是interfaces。

3、outer class不可继承自多个具体 class,可在其内部设多个inner class,每个inner class都能各自继承某一实现类。
   inner class不受限于outer class 是否已经继承自某一实现类。

4、inner class可以说是多重继承问题的完整解决方案。
   inner class 可 “继承自多个具象或抽象类”。
   一个类不能继承自多个一般类。但我们可以让其内部的多个inner class各自继承某一实现类达到类似的目的。
作者: 高欢欢    时间: 2012-7-18 07:23
Java不支持多继承,但是通过一些巧妙的设计来达到和多继承同样的效果
通过接口、内隐类,继承、实现,互相配合,达到多继承的效果

1、Java中一个类不能继承多个具体class。

2、一个类只可继承自一个具体 class,但可实现多个接口。
   interface不涉及到实现细节,不与任何存储空间有关连。
   可以实现合并多个 interface ,达到可向上转型为多种基类的目的。
   新类可继承自一个具象class,其余继承都得是interfaces。

3、outer class不可继承自多个具体 class,可在其内部设多个inner class,每个inner class都能各自继承某一实现类。
   inner class不受限于outer class 是否已经继承自某一实现类。

4、inner class可以说是多重继承问题的完整解决方案。
   inner class 可 “继承自多个具象或抽象类”。
   一个类不能继承自多个一般类。但我们可以让其内部的多个inner class各自继承某一实现类达到类似的目的。


作者: 陈云帆    时间: 2012-7-18 08:33
1.java一个类一般只能继承一个父类,但是内部类可以实现多继承。
2.java的类与接口之间可以是多实现关系。
3.外部类不可以继承多个具体的类,但是可以再其内部定义多个内部类,这些内部类可以继承多个类。
4.内部类的多继承可以很好的 解决很多问题。

希望对你有帮助




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