JAVA如何利用接口制造类似于C++的多继承

王朝java/jsp·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

多继承其实是不好的东西,但是你有时候却要用到它,那怎么办呢?可以利用接口,下面是一个简单的例子。

interface CanFly

{

void fly();

}

interface CanSwim

{

void swim();

}

interface CanFight

{

void fight();

}

class ActionCharter

{

public void fight()

{

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

}

}

class Hero extends ActionCharter implements CanFly,CanSwim,CanFight

{

public void swim(){

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

}

public void fly(){

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

}

}

public class HelloWorld

{

public static void u(CanFly i){i.fly();}

public static void v(CanSwim i){i.swim();}

public static void w(CanFight i){i.fight();}

public static void x(ActionCharter i){i.fight();}

public static void main(String []args)

{

Hero hero = new Hero();

u(hero);

v(hero);

w(hero);

x(hero);

}

}

讲解一下,这个例子里面在Hero继承了一个类ActionCharter来实现接口CanFight的功能,另外两个接口用方法实现,而在运行的时候采用动态绑定,来进行多态的实现,这个例子很简单,但是用在实际上却很有用

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航