java学习总结(16.07.11—16.07.12)接口--interface

什么是接口

接口是一种特别的“抽象类”,它比抽象类更加抽象。接口是一种规范,必须由类来实现。接口具有比类更高的抽象层次,在我看来,接口就像是类的模板。
接口的声明:
<span style="font-size:14px;">interface InterfaceTest {
	void fun1();
	void fun2();
}</span>
对于接口的声明可以使用的修饰符只有public和abstract,其他修饰符均不合法,而没有修饰符时,接口的声明默认是公有抽象的
接口的实现
接口不能实例化出对象,类可以实现接口,类实现接口使用的是implements关键字
<span style="font-size:14px;">class Test implements InterfaceTest{
	public void fun1(){}
	public void fun2(){}
	}</span>

使用接口的注意事项

①接口的成员方法默认是public abstract的,而且成员方法能使用的权限修饰符只有public和default
②接口的变量成员默认是public static final的,而且变量成员能使用的修饰符只有public,final和static,所以接口的成员变量在定义时要同时赋值
③若用一个非抽象类来实现一个接口,那么这个类必须要实现这个借口的所有方法,而抽象类则不必
④接口不可以实例化处对象,也没有构造方法(注意与抽象类区分)
⑤可以声明接口的引用变量,而接口的引用变量可以指向实现了这个接口的类所实例化的对象,而这也是一种多态

接口的继承

接口的继承使用的是extends关键字,但类继承不一样,接口继承支持多继承,接口多继承时extends只使用一次
例:
public class Main {
	interface interfaceA{
		int propertyA=5;
		void testA();
	}
	interface interfaceB{
		int propertyB=10;
		void propertyB();
	}
	interface interfaceC extends interfaceA,interfaceB{
		int porpertyC=15;
		void propertyC();
	}
	public static void main(String[] args) {
		System.out.println(interfaceC.propertyA);
		System.out.println(interfaceC.propertyB);
		System.out.println(interfaceC.porpertyC);
	}
}
注:接口多继承时,子接口最好不要让变量名重名,


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值