java中的接口

接口在java中是种抽象类型,主要是对行为进行抽象,用interface声明,一般用类来

继承接口,进而继承实现接口中的抽象方法。

interface A{
	public static final int age = 10;
	public abstract void fun1();//不能有具体的实现
}
interface B{
	int b =100;
	void fun2();
}

两个接口,接口变量默认的类型是public static final类型,方法默认public abstract

类型。

接口之间也是可以继承的:

interface AB extends A,B{
	void fun3();
}

类可以继承不止一个接口,这就解决了java中的单继承问题

class C implements A,B{

	@Override
	public void fun1() {
		// TODO Auto-generated method stub
		System.out.println("A.fun1()");
	}

	@Override
	public void fun2() {
		// TODO Auto-generated method stub
		System.out.println("B.fun2()");
	}
	
}

同样接口不能通过new来实例化,想要实例化只能向上转型

public static void main(String[] args) {
		// TODO Auto-generated method stub
		C c = new C();//派生类
		A a = new a();//报错
		A b = new C(); 
	}

接口可以继承接口但不能实现接口,实现要借助类

说明接口和抽象类的几点区别:

1,一个子类只能继承一个父类,但可以实现多个接口(解决多继承问题),接口可以

继承多个类

2,抽象类可以有非抽象方法,但接口中都是抽象方法

3, 接口的数据成员都是 public static final

4,接口是对行为的抽象,但是抽象类是对整体的抽象


如有错误,请多多指教

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值