【25节JavaSE知识点·12】熟悉接口,这一篇就够啦!

接口

1、接口概念

是一种标准和规范,是制约接口的使用者和接口的实现者双方的一种约定。

2、语法

(1)关键字interface

语法:interface 接口名{  
	//常量  
	//抽象方法 
	}

(2)接口不能创建对象

(3)接口中没有构造方法

(4)接口中的属性都是公开静态常量(默认被public static final修饰)

(5)接口中的所有方法都是公开的抽象方法

(默认被public abstract 修饰)

【注】:接口中方法默认访问权限是public 普通类默认为缺省default

3、接口的实现类

(1)语法

class 类名 implements 接口名{ }

(2)实现类的要求

  • 如果接口的实现类不想成为抽象类,必须覆盖接口中全部的方法。
  • 实现类中覆盖接口的权限必须是public,因为接口的访问权限为public。

(3)使用:

父类型的引用指向子类的对象——多态的使用。

接口名 引用 = new 实现类名();

4、接口的继承性

(1)接口与接口之间是多继承

一个接口可以同时继承多个接口

interface 接口名 extends 父接口1,父接口2{ }

(2)接口与类之间是多实现

一个类可以同时实现多个接口

class 类名 implements 接口名1,接口名2{ }

注意:如果实现类不想成为抽象类,必须覆盖所有接口中的所有方法

(3)一个类实现多个接口的同时,可以继承一个父类

class 类名 extends 父类名 implements 接口名{  }

注意:必须是 继承在前 实现在后。只能继承一个父类,可以实现多个接口。

5、接口的影响

(1)接口之间的多继承接口与类之间的多实现的关系,让多态更加复杂和多样化。

(2)接口在Java中起到制定标准和规范的作用,用于制约接口的使用者和接口的实现者。

(3)在实际开发中,利用接口将接口的使用者和接口的实现者进行分离,从而降低程序的耦合度,实现程序的弱耦合。(利用多态技术)

img

6、高版本对接口的补充

1、JDK8.0版本对接口的提升

默认方法

(1) 默认方法,可以带有方法的实现部分,方法访问权限也是public。

(2) 默认方法允许方法覆盖。

(3) 该方法可以用于提取公共方法,降低代码的冗余性。

interface IAA{    
	public default void m1(){      
	//方法实现部分    
	}
}

静态方法

(1) 静态方法也可以有方法的实现部分。

(2) 静态方法的访问权限也是public。

(3) 使用时:接口名.静态方法(实参);

public static 返回值类型 方法名(形参){ 
	方法的实现部分 
}
public class Test5 {    
	public static void main(String[] args) {        
		Ik.m1();    
	}
}
interface Ik{    
	public static void m1(){        
	System.out.println("静态方法");    
	}
}
2、JDK9.0版本

私有方法

(1) 接口中可以定义私有方法

(2) 私有方法通常共给接口中的default方法使用,作为接口内部组件,进一步减少冗余

private 返回值类型 方法名(形参列表){
	//方法实现部分
}

7、接口分类【了解】

(1) 常量接口:接口中只有属性,没有方法。

interface IA{  
	public static final int a = 9;
}

(2) 标记接口:空接口,接口中没有定义任何内容。

interface IB{}

(3) 函数式接口:接口中有且只有一个抽象方法

interface IC{  
	void m1();
}注意:函数式接口会应用在Lambda表达式中

(4) 普通接口:接口中至少有一个抽象方法。

【面试重点】接口和抽象类的区别

img

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值