Java初学——接口interface

一、定义Java初学——接口interface_第1张图片

二、相关说明Java初学——接口interface_第2张图片

举例一

Java初学——接口interface_第3张图片

举例二

Java初学——接口interface_第4张图片

三、接口与类的区别(个人理解)

一方面,有时必须从几个类中派生出一个子类,继承它们所有的属性和方法。但是,Java不支持多重继承。有了接口,就可以得到多重继承的效果。

另一方面,有时必须从几个类中抽取出一些共同的行为特征,而它们之间又 没有is-a的关系,仅仅是具有相同的行为特征而已。例如:鼠标、键盘、打印机、扫描仪、摄像头、充电器、MP3机、手机、数码相机、移动硬盘等都支持USB连接。

接口就是规范,定义的是一组规则,体现了现实世界中“如果你是/要…则 必须能…”的思想。继承是一个"是不是"的关系,而接口实现则是 “能不能” 的关系。

简单来说,接口是对功能的抽象,类是对本质的抽象。比如说,人和小猫、小狗都属于动物,存在is-a关系,可以用Person类、Cat类、Dog类分别继承Animal类。与此同时,人、猫、狗都具有吃东西的能力,因此可以将吃东西抽象为一个接口interface,让人、猫、狗去实现(implements)这个功能。所以,一个类只能直接继承一个类,但是可以实现多个接口(吃饭接口、说话接口等)。

接口和抽象类对比如下:
Java初学——接口interface_第5张图片

四、Java 8中关于接口的改进

Java初学——接口interface_第6张图片

public interface AA { 
	double PI = 3.14;
	public default void method() { 
	    System.out.println("北京"); 
	}
	default String method1() { 
	    return "上海"; 
	}
	public static void method2() { 
	    System.out.println(“hello lambda!"); 
	}
}
接口中的默认方法

Java初学——接口interface_第7张图片
Java初学——接口interface_第8张图片

你可能感兴趣的:(java,接口,编程语言,抽象类)