JavaSE-接口简单介绍

本文详细介绍了Java中的接口特性,包括接口成员的默认属性(public、static、final),接口中的抽象方法以及如何实现接口。强调了接口与类继承的区别,指出接口的实现类必须实现所有抽象方法。还探讨了default关键字在接口中的作用,允许接口定义非抽象方法。通过示例代码展示了default方法的使用,并讨论了接口多实现的灵活性。
摘要由CSDN通过智能技术生成

接口中的成员只能是公有、静态、常变量,即它必须(自动)拥有public、static和final的联合属性,接口中的方法只能是公有的抽象方法,即必须(自动)拥有public和abstract的联合属性!

就是说就算不加修饰符,依旧会被认定为拥有以上所说的联合属性!如下所示:

public interface MyFirstInterface {
	
	public static final int MAX_NUM = 200;
	
	int ac= 3;
	String stringOne = "这是一个静态只读字符串!";
	
	public abstract int fun1();
	
	String fun2(int str1, String str2);

}

即ac与stringOne均存在public、static以及final属性,fun2()也拥有public和abstract属性。

一个接口的实现类类似于接口的子类,但是一个子类可以有不止一个的接口,这点与继承不同,继承所派生的子类只能有一个父类!还有这个子类必须实现所有接口的所有抽象方法,否则这个类依旧是一个抽象类。

接口的子类所实例化的对象均属于它的每个接口以及本类。如下:

InterfaceMyFirstInterface imfi1 = new InterfaceMyFirstInterface();
		System.out.println(imfi1.fun1());
		System.out.println(imfi1 instanceof InterfaceMyFirstInterface);
		System.out.println(imfi1 instanceof MyFirstInterface);
		System.out.println(imfi1 instanceof MySecondInterface);

 实现了这个接口的类可以调用这个接口的所有成员及方法:

关于default关键字

关于default这个关键字主要使用在接口中,它的作用是使得这个接口的方法可以存在方法体,即非abstract方法。可以在接口中提前编写已经确定的方法逻辑。

default void initView() {
		init();
		dealAction();
	}

 如上所示,在default关键字下可以编写方法体,且方法里可以调用接口中的未实现的方法。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值