欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java初学——接口interface

程序员文章站 2024-02-17 17:02:04
...

一、定义Java初学——接口interface

二、相关说明Java初学——接口interface

举例一

Java初学——接口interface

举例二

Java初学——接口interface

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

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

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

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

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

接口和抽象类对比如下:
Java初学——接口interface

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

Java初学——接口interface

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
Java初学——接口interface