package day2.yubaby03.p1;
/*
3 接口
3.1 接口概述
接口就是一种公共的规范标准,只要符合规范标准,大家都可以通用。
Java中的接口更多的体现在对行为的抽象!
3.2 接口特点
接口用关键字interface修饰
public interface 接口名 {}
类实现接口用implements表示
public class 类名 implements 接口名 {}
接口不能实例化
接口如何实例化呢?参照多态的方式,通过实现类对象实例化,这叫接口多态。
多态的形式:具体类多态,抽象类多态,接口多态。
多态的前提(更新):
有继承或者实现关系;
有方法重写;
有父(类/接口)引用指向(子/实现)类对象
接口的子类
要么重写接口中的所有抽象方法
要么子类也是抽象类
*/
public class JumppingDemo {
public static void main(String[] args) {
// Jumpping j = new Jumpping(); //error
Jumpping j = new Cat();
j.jump(); //编译看父类,执行看子类
}
}
package day2.yubaby03.p1;
public interface Jumpping { //接口interface
public abstract void jump();
}
package day2.yubaby03.p1;
public class Cat implements Jumpping{ //实现接口implements
@Override
public void jump() {
System.out.println("猫猫会跳高吗???");
}
}
package day2.yubaby03.p1;
public abstract class Dog implements Jumpping{ //被abstract修饰时可以不重写接口中的抽象方法,但该类的子类要重写
/*@Override
public void jump() {
System.out.println("狗狗会跳高吗???");
}*/
}