java程序中接口间能否有继承关系?

Python09

java程序中接口间能否有继承关系?,第1张

接口是可以被“继承的”(通常叫实现接口,继承父类),因为java是多继承单实现(可以继承多个接口,实现一个父类)的语言。

判断一个对象有继承关系,可以通过以下工具类来实现,返回true表示继承了:

public boolean isInterface(Class c, String szInterface)

{

Class[] face = c.getInterfaces()

for (int i = 0, j = face.lengthi <ji++)

{

if(face[i].getName().equals(szInterface))

{

return true

}

else

{

Class[] face1 = face[i].getInterfaces()

for(int x = 0x <face1.lengthx++)

{

if(face1[x].getName().equals(szInterface))

{

return true

}

else if(isInterface(face1[x], szInterface))

{

return true

}

}

}

}

if (null != c.getSuperclass())

{

return isInterface(c.getSuperclass(), szInterface)

}

return false

}

可以,java中一个类仅能有一个父类,但可以实现多个接口!

class Base(){}

interface Myface(){}

interface Myface2(){}

class Sub extends Base implements Myface,Myface2{

}

接口就是用来被继承的,这样,一个类继承它以后,才可以调用或者重载接口的方法.这个是JAVA语言的特点,设计时候就是这么设计的,可能是为了跨平台的需要,没有什么区别,你只要记住这个特点就行了,经常要用的的,而且用起来灵活.还有其他例如重载,多态的特点,都是JAVA跨平台的优势!其他语言没有的