栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java抽象类和接口的学习

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java抽象类和接口的学习

抽象类

1.抽象类的定义
在继承的层次结构中,每个新类的子类都使类变得更加明确和具体。如果从一个子类向父类追溯,类就会变得更通用、更加不明确。类的设计应该确保父类包含它的子类的共同特点。有时候,一个父类设计得非常抽象,以至于它都没有任何具体的实例。这样的类称为抽象类。
2.抽象类的创建
在类的头部使用abstract修饰符表示该类为抽象类,不能使用new操作符创建该类的实例,在该类中定义的无法在该类中实现的方法被称为抽象方法,它的实现由子类提供。
抽象类的构造方法定义为protected,因为它只被子类使用。所以在创建一个具体的子类实例时,其父类的构造方法被调用以初始化父类中定义的数据域。

下图中便是使用abstract表示GeometricObject类为抽象类,并在其构造方法前添加protected

接口

接口的定义
接口在许多方面都与抽象类很相似,但是它的目的是指明相关或者不相关类的对象的共同行为。例如,使用适当的接口,可以指明这些对象是可比较的、可食用的或者可克隆的。
java使用interface来定义接口
在 java中,接口被看作是一种特殊的类。就像常规类一样,每个接口都被编译为独立的字节码文件。使用接口或多或少有点像使用抽象类。例如,可以使用接口作为引用变量的数据类型或类型转换的结果等。与抽象类相似,不能使用new 操作符创建接口的实例。

例如,可以使用 Edible 接口来指定一个对象是否是可食用的。这需要使用implements关键字让对象所属的类实现这个接口。类和接口之间的关系称为接口继承(interface inheritance)。因为接口继承和类继承本质上是相同的,所以我们将它们都简称为继承。

接口与抽象类

接口的与抽象类的比较
接口的使用与抽象类的使用基本类似,但是定义一个接口与定义一个抽象类有所不同

可利用关键字extends使接口继承其他接口,java只允许为类的继承做单一继承,但是允许使用接口做多重继承
所有的类共享一个根类Object,但是接口没有共同的根。
同时,接口只有定义,没有方法的实现。
但是接口与抽象类也同样有相同点:
接口与抽象类都不能被实例化,接口的实现类与抽象类的子类都只有在实现了它们中定义的方法后才能被实例化。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/678304.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号