Java对于多重继承是怎么实现的

 我来答
黑马程序员
2017-03-07 · 改变中国IT教育,我们正在行动
黑马程序员
黑马程序员为大学毕业后,有理想、有梦想,想从事IT行业的年轻人改变自己的命运。黑马程序员成就IT黑马
向TA提问
展开全部

Java对于多重继承是怎么实现的?

  1. 首先回答这个问题之前,我需要说明下什么是继承?什么是多重继承和单继承?java采用何种机制来实现多重继承:

    1.1继承是面向对象编程的一种特性,是保留原有类功能的前提下拓展或改写部分功能,实现代码复用的方式.。

1.2单继承就是一个类只可以继承自一个父类,多继承是指一个类可以同时继承多个父类。

1.3java中使用的是单继承,也就是一个类有且只能有一个父类,java中可以使用接口实现来实现类似多继承的效果。

2.下面着重介绍Java中如何实现多继承:

如下是多重继承示例:

interface CanFight{

void fight(); 

}
interface CanSwim{

void swim(); 

}
interface CanFly{

void fly(); 

}
class ActionCharacter{

public void fight(){

System.out.println("I can fight!");
}

}
class Hero extends ActionCharacter implements CanFight,CanSwim,CanFly{

public void swim(){

System.out.println("I can swim!");

}
public void fly(){

System.out.println("I can fly!");

}
public class Adventure {

public static void t(CanFight x){x.fight();

}
public static void u(CanSwim x){x.swim();

}
public static void v(CanFly x){x.fly();

}
public static void w(ActionCharacter x){x.fight();

}
public static void main(String[] args){

Hero h=new Hero();

t(h);

u(h);

v(h);

w(h);

}

}

从这个实例中,不能看出Java对于多继承是如何实现的。

运行结果:

I can fight! 
I can swim! 
I can fly! 
I can fight!


以上就是Java对于多继承是如何实现的说明

育知同创教育
2017-05-16 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部

Java中为了保证数据安全,只能够单继承,也就是说一个类只能有一个父类。既然类无法多重继承,那么只能使用接口实现,因为一个类可以实现多个接口。只要根据需求,将相关方法放在不同的接口中,让子类去实现,也可以达到多重继承的效果。

下面是一个使用接口实现多重继承的例子:

interface Plant{  
   void grow();  
}  
interface Flower {  
   void bloom();  

interface Apple {  
   void fruit();  
}  

class RedApple implements Plant,Flower,Apple{  
   public void grow(){  
      System.out.println("RedApple isgrowing.");  
   }  
   public void bloom(){  
      System.out.println("RedApple isblooming.");  
   }  
   public void fruit() {  
      System.out.println("RedApple isfruiting.");  
   }  
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式