Java面向对象----接口概念
接口语法
interface 接口名{ //静态常量,抽象方法 }
特点
接口中只能存放静态常量和抽象方法
java接口是对功能的扩展
通过实现接口,java类可以实现多实现
一个类可以同时继承(extends)一个父类并且实现(implements)多个接口
接口与接口之间可以通过extends来继承
接口与抽象类的区别
抽象类和具体实现类之间是一种继承关系,父类和子类在概念上相同
接口和实现类在概念上不要求相同,不关注类之间的关系,只是抽取相互之间没有关系的类的共同特征
抽象类用于一组相关的事物 表示的是is--a 的关系
接口用于一组不相关的事物,表示的是like-a的关系
package com.tanlei.newer; //动态绑定 public class InterfaceDemo { public static void main(String[] args) { Personssss p=new Personssss(); Child child=new Child(); tomcat tomcat=new tomcat(); p.feed(child); p.feed(tomcat); } } interface Iability{ //接口中只能存放公有的静态常量和抽象方法 /*public static final int number=1; public abstract void show();*/ void eat(); } class Personssss{ /*public void feed(Child child) { child.eat(); } public void feed(tomcat tomcat) { tomcat.eat(); }*/ //接口的引用变量可以引用其实现类的对象 public void feed(Iability iability) { iability.eat(); } } class Child implements Iability{ public void eat() { System.out.println("吃米粉"); } } class tomcat implements Iability{ public void eat() { System.out.println("吃鱼"); } }