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("吃鱼");
	}
}

 

posted @ 2018-11-11 21:32  言西早石头侠  阅读(255)  评论(0编辑  收藏  举报