java学习15-面向对象(interface接口)

接口

——一种特殊的抽象类,关键字interface

interface 接口名{

         //接口的成员,都有固定修饰符

         //一般常有:

         //1.常量,全局常量有固有的修饰符 publicstatic final

         //2.抽象方法固定修饰符 publicabstract

}

 

接口定义特点:

1,接口用interface来定义。

2,接口中的成员都有固定的修饰符。

3,接口不能被实例化,。

4,接口必须由其子类覆盖了所有的抽象方法后,该子类才可以实例化。 否则,该子类还是一个抽象类。

5,接口中的成员都是public修饰的。


简单例子:

//定义接口
package com.dragon.src;

public interface InterfaceDemo {
	public final static int num = 3;
	public abstract void show();//抽象方法
}

//实现接口
package com.dragon.src;

public class InterImpl implements InterfaceDemo{
	//覆盖方法
	@Override
	public void show() {
		// TODO Auto-generated method stub
		System.out.println("接口实现类,打印数字"+num);//使用接口里的num
	}	
}
//主函数
package com.dragon.src;

public class InterDemo {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		InterImpl impl = new InterImpl();
		impl.show();
	}
}

注意:

类与类之间是继承关系,类与接口之间是实现关系。


接口的出现好处:

         接口可以被多实现。这就是多继承机制在java语言被改良后的结果。一个类可以实现多个接口。

例子:

/**
*类与类之间是继承,而且是单继承。
*类与接口之间是实现,而且可以多实现。
*接口与接口之间是继承关系,而且可以多继承。
*/
interface DemoA
{
	void showA();
}
interface DemoB //extends DemoA
{
	void showB();
}

interface DemoC extends DemoB,DemoA
{
	void showC();
}

class DemoD implements DemoC
{
	public void showA(){}
	public void showB(){}
	public void showC(){}
}


接口的优点:

1)接口的出现降低了耦合性。

2)接口的出现提高了扩展性。

3)接口就是对外暴露的规则。

 


接口和抽象类的区别:

1

类是用来继承的,只能单继承。

接口是用来实现的,可以多实现。

2

类中可以定义非抽象内容,直接提供给子类使用。

接口中只能定义抽象方法,需要子类全部实现。

3

类存在着继承关系,是is a关系。

接口的实现关系,是 like a 关系。

共同点:

它们都是不断抽取而来的。共性的抽象

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值