码迷,mamicode.com
首页 > 编程语言 > 详细

java多继承

时间:2018-03-07 23:57:11      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:amp   报错   重要   pre   对象   扩展   package   nts   ace   

众所周知,java面向对象语言中只有单继承的编程语言,也许你会说,通过实现多个接口这种变通的方式达到多继承的目的。没错,你说的对,不过这并不是本片文章要说到的内容,本文要讲到的内容是java中实实在在存在的多继承结构,废话不多说了,咱们进入主题吧。 
其实,说起继承关系,大家的第一印象肯定是类的继承,就java而言,类的继承的的确确是单继承的,就这点而言,毋庸置疑,java的语法和编译器将这一点限制的死死的,假设你试图让一个类通过extends关键字继承一个以上的父类,编译一定通过不过得。

这里说的多继承是接口的多继承,我们知道类在实现接口时,通过implements关键字来使用和实现多个接口。扩展性java的一个重要的特性,若果我们想对已有的多个接口进行扩展,因为不是实现接口,就不能使用implements关键字,那怎么办呢,那就只能使用extends关键字了。下面看代码:

package com.lib.ThinkInJava.mutilExtends;
public interface Lethal {
    void kill();
}

package com.lib.ThinkInJava.mutilExtends;
public interface Monster {
    void destroy();
}

package com.lib.ThinkInJava.mutilExtends;
public interface Vampire extends Monster, Lethal {
    void drinkBlood();
}

Vampire接口继承了Monster,Lethal俩个接口,而且使用了关键字extends,在编译器中也没有报错,是不是很有意思,这就是java中的多继承。

注:java中的多继承仅适用于接口,类没有多继承,只有单继承

java多继承

标签:amp   报错   重要   pre   对象   扩展   package   nts   ace   

原文地址:https://www.cnblogs.com/eer123/p/8525275.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!