2021年1月6日星期三

JAVA接口的基本语法

一、接口的概念

在之前学习了抽象类,其中抽象类的抽象方法定义了标准,具体的方法实现交给子类完成,之后再结合多态的特征在一定程度上解决代码的耦合(上节课的参数统一),这需要在继承关系中实现,但是继承存在单继承的局限。

今天的接口出现就解决单继承的局限,接口是也是一个特殊的类,没有自己的构造方法,在接口中只能定义全局常量、抽象方法、静态方法(虽然语法.上可以,但是一般不会在接口中去定义静态方法),要定义一个接口需要使用到一个新的关键字就是interface。

DEMO:定义接口

 



 



 



 

以上定义了接口,接口没有自己的构造方法,但是发现了一个很奇怪的问题:所有的方法都没有方法体,但是却没用abstrat修饰,所以在接口中抽象方法默认是可以省略abstract 的,因为默认就是抽象方法。可以省略public吗?可以省略,但是为了防止不熟悉语法的程序员出错,强烈要求不省略(规范的写上)。

 

DEMO: public 修饰符可以换成private吗?

 



 

不能使用private修饰,只能使用public 或者不写( 默认就是public)

 

二:接口的使用

在接口中定义了抽象方法,而且接口没有自己的构造方法,那么就意味着不能使用接口直接实例化对象,所以接口要有意义则应该有自己的实现类(就是子类),这里的接口与实现类的关系和抽象与自己的子类的关系是一样的。使用抽象类和自己的子类可以实现向.上转型从而使用多态的特征,接口也一样可以实现向上转型从而实现多态的特征。

之前抽象类的子类要继承抽象类使用的关键字是"extends",实现类要实现接口使用的关键字是"implements"。

DEMO:定义接口的实现类.

 



 



以上的EmpDAOImpl是IEmpDAO的实现子类,我们之前说了可以向上转型。

DEMO:向. 上转型实例化子类对象

 



 

有完整的Java初级,高级对应的学习路线和资料!专注于java开发。分享java基础、原理性知识、JavaWeb实战、spring全家桶、设计模式、分布式及面试资料、开源项目,助力开发者成长!


欢迎关注微信公众号:码邦主












原文转载:http://www.shaoqun.com/a/506046.html

跨境电商:https://www.ikjzd.com/

paipaiwang:https://www.ikjzd.com/w/2205

c88是什么:https://www.ikjzd.com/w/1017


一、接口的概念在之前学习了抽象类,其中抽象类的抽象方法定义了标准,具体的方法实现交给子类完成,之后再结合多态的特征在一定程度上解决代码的耦合(上节课的参数统一),这需要在继承关系中实现,但是继承存在单继承的局限。今天的接口出现就解决单继承的局限,接口是也是一个特殊的类,没有自己的构造方法,在接口中只能定义全局常量、抽象方法、静态方法(虽然语法.上可以,但是一般不会在接口中去定义静态方法),要定义一
亚马逊应用商店:亚马逊应用商店
联动优势电子商务:联动优势电子商务
成都洛带古镇旅游全攻略:成都洛带古镇旅游全攻略
老虎谷漂流自驾游怎么走?:老虎谷漂流自驾游怎么走?
泰国旅游怎么样?:泰国旅游怎么样?

没有评论:

发表评论