/*
*
* 开发系统时,主体构架使用接口,接口构成系统的骨架
*
*
*
*/
public class InterfaceDemo {
public static void main(String[] args) {
Person p = new Person();
Child child = new Child();
Dog dog = new Dog();
p.feed(child);
p.feed(dog);
}
}
interface IAbility {
void eat();
// 接口中只能放有公有的静态常量和抽象方法
// public static final int number=1;
//
// 默认会加public static final
//
// public abstract void show();
// 默认会加public abstract
}
class Child implements IAbility {
public void eat() {
System.out.println("吃米饭");
}
}
class Person {
// public void feed(Child child){
// child.eat();
// }
// public void feed(Dog dog){
// dog.eat();
// }
// 接口的应用变量可以引用其实现类的对象
// 接口实现了多态
public void feed(IAbility ability) {
ability.eat();// 动态绑定
}
}
class Dog implements IAbility {
public void eat() {
System.out.println("啃骨头");
}
}
结果——