Java 接口

概念

接口是一系列方法的声明, 是抽象方法的集合;一个接口只有方法的声明,没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现类可以具有不同的行为。

适用场景

当抽象类中的方法都是抽象方法,变量都是常量时,建议将该类转换为接口描述。

关键词

interface/implements

特点

耦合性低、规范化等等,接口与接口之间可以多继承,类与接口之间可以多实现

例如:电脑上的USB接口,即插即拔式,扩展性强,有规则要求。

接口定义语法形式:

[修饰符] interface 接口名 [extends] [接口列表]{
          接口体
 }

类实现接口的语法形式:

[类修饰符] class 类名 implements 接口列表{
         类体
}

示例代码
1.定义蓝牙接口

//定义蓝牙接口
public interface BlueTooth {

	//提供输入服务
	public void input();
	//提供输出服务
	public void output();
}

2.定义蓝牙耳机类,实现蓝牙接口

public  class Earphone implements BlueTooth {

	String name ="蓝牙耳机";
	//实现蓝牙耳机输入功能
    public void input(){
    	System.out.println(name+"正在输入音频数据...");
    }
    //实现蓝牙耳机输出功能
    public void output(){
    	System.out.println(name+"正在输出反馈数据...");
    }
}

3.定义iPad类,实现蓝牙接口

public class iPad implements BlueTooth {
	
	String name = "iPad";
	//实现iPad输入功能
	public void input(){
		System.out.println(name+"正在输入数据...");
	}
    //实现iPad输出功能
	public void output(){
		System.out.println(name+"正在输出数据...");
	}
}

4.测试类

public class Test {

	public static void main(String[] args) {
		
		//创建并实例化一个实现了蓝牙接口的蓝牙耳机对象eq
		BlueTooth ep = new Earphone();
        //调用ep的输入功能
		ep.input();
        
	    //创建并实例化一个实现了蓝牙接口的iPad对象ip
		BlueTooth ip = new iPad();
		//调用iP的输入功能
		ip.input();
		//调用iP的输出功能
		ip.output();
        
	}

}

特征

1.接口中不允许有实体方法。
2.接口中可以有成员变量,默认修饰符是public static final。
3.方法的默认修饰符是public abstract。
4.一个类中可以实现多个接口。
5.接口可以继承其他接口,实现接口合并功能。

抽象类和接口之间的区别

  • 接口中都是抽象方法,抽象类中还可以有普通方法
  • 抽象类中可以有构造器,接口中没有
  • 抽象类中定义的是公共的功能,接口中定义的额外的功能

注意

jdk1.8之前接口的方法都是抽象方法,变量都是常量,1.8及之后接口可以定义默认方法

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值