接口---java支持的一个东西

interface+接口名,implements+接口名,对接口的一个实现。

之前我们学过抽象类,它里面可以没有抽象方法,但接口里的东西都是public(公有的),抽象的。接口里的属性是public static final类型的。
我的理解,接口就是换了一个名称的另外一个类。

类与类之间能够完成继承那么接口呢?

接口与接口之间不能完成实现,因为实现接口自己要有可实现的东西,借口里没有可实现的。
接口能不能继承类或抽象类吗?不能,因为类,抽象类里可能有具体的东西,而接口没有具体的实现。
接口可以继承借口,它们都没有具体的实现。不会冲突。
接口能够继承多个接口,类能够实现多个接口。

那到底接口被造出来有何意义?

因为类可以实现多个接口,而类不能继承多个类,会产生菱形关系,你一个类,继承多个类,多个类中有同名的方法,你知道继承哪一个?

interface Animal {
    public static final int a = 1;

    public abstract void eat();

    public abstract void sleep();
}

class Worf implements Animal {
    public void eat() {
        System.out.println("吃羊");
    }

    public void sleep() {
        System.out.println("睡在洞里");
    }
}

class Demo1 {
    public static void main(String[] args) {
        Worf d = new Worf();
        d.eat();
        d.sleep();
        System.out.println(d.a);
    }
}

学完接口我感觉抽象类就是接口与类生的混血

你可能感兴趣的:(接口---java支持的一个东西)