TextVersion_08_java继承体系

java继承体系

 

java的继承体系是单继承多实现

 

那么大家有没有想过,

为什么是单继承多实现呢

 

我是这么想的,假设现在是多继承的体系

那么有这样几个类

胡思乱想了这么一个例子

 

//,

class Wolf{

public void speak(){

System.out.println(“狼语”);

}

}

 

//,

class Human{

public void speak(){

System.out.println(“人语”);

}

}

 

现在有一个狼类,一个人类,现在再来个狼人,狼人既是狼也是人,所以继承这两个类

class WereWolf extends Wolf extends Human{

 

}

现在我们创建狼人WereWolf对象

WereWolf  wereWolf  =  new  WereWolf();

wereWolf.speak();

 

狼人继承了狼和人,但是我们调用speak方法的时候,

系统错乱了,到底是说狼语还是说人语,

所以这样多继承的体系就不知道该调用哪个父类的方法.

 

 

 

 

 

现在转回到我们的单继承多实现体系

 

我们来两个接口

interface Wolf{

public void speak();

}

 

interface Human{

public void speak();

}

 

class WereWolf implements Wolf implements Human{

public void speak(){

System.out.println(“狼人语”);

}

}

 

由于是接口,方法没有方法体,所以我们的狼人类就可以实现自己的speak方法,

就可以自己决定具体的speak方法.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(java,继承,多实现,继承体系,单继承)