我们首先要知道:
(1)类与类之间是单继承,并且直接父类只有一个
(2)类与接口之间是多实现的,一个类可以实现多个接口
(3)接口与接口之间是多继承的
范例:
interface faceA
{
String INFO="HelloWorld.";
void print();
}
interface faceB
{
public abstract void get();
}
abstract class abstractC
{
public abstract void fun();
}
class subClass extends abstractC implements faceA,faceB
{
@Override
public void print() {
System.out.println(INFO);
}
@Override
public void get() {
System.out.println("你好!");
}
@Override
public void fun() {
System.out.println("你好Java");
}
}
public class ExtendsInterface{
public static void main(String[] args) {
subClass subObj=new subClass();
faceA fa=subObj;
faceB fb=subObj;
abstractC ac=subObj;
fa.print();
fb.get();
ac.fun();
}
}
运行结果如下:
HelloWorld.
你好!
你好Java
这里我们有两个注意事项:
1.多个父类接口当中的抽象方法重复不会有任何影响
2.多个父类接口当中的默认方法不能重复,如果重复则子类接口必须进行默认方法的覆盖重写而且带有default关键字
范例解析:最先声明了一个接口face A,并在里面声明了一个常量INFO且赋初值Hello world,同时又定义了一个抽象方法print(),再定义了一个接口face B,在其内定义了一个抽象方法get(),接着再后面声明抽象类abstractC并定义抽象方法fun(),最后声明子类subClass它先继承抽象类abstractC,随后实现接口face A和face B