当前位置: 主页 > 外烟分类 > java中抽象类和接口的区别(java接口和抽象类有什么不同)

java中抽象类和接口的区别(java接口和抽象类有什么不同)

发布日期:2021-12-20 11:18 作者:shunf外烟
外烟资讯

本文将详细解释java中抽象类和接口之间的异同。文章内容质量很高,边肖分享给大家参考。我希望你看完这篇文章后能有所了解。

00-1010抽象类用于定义Java语言中的抽象类。抽象类不能实例化,也就是说,对象不能用new关键字实例化。抽象类必须包含抽象方法,但抽象类不一定包含抽象方法。如果子类实现了父类(抽象类)的所有抽象方法,那么子类不需要是抽象类,否则就是抽象类。抽象类中抽象方法的修饰符只能是公共的或受保护的。

}我们假设自定义圆形类和矩形类是几何对象的子类。它们都有getArea()方法和getPerimeter()方法来计算各自的面积,但是这些方法不能在父类中定义,因为具体的计算方法取决于几何对象的具体类型。因此,使用抽象方法来定义可以确保父类中的抽象方法可以在子类中重写。

1.抽象方法不能包含在非抽象类中。如果抽象父类的子类不能实现所有的抽象方法,那么子类也必须被定义为抽象的。也就是说,所有的抽象方法都必须在继承自抽象类的非抽象子类中实现。还要注意,抽象方法是静态的。

2.抽象类不能用新的运算符初始化。但是您仍然可以定义它的构造函数,该构造函数在其子类的构造函数中被调用。

3.包含抽象方法的类必须是抽象的。但是,您可以定义一个没有抽象方法的抽象类,它被用作定义新子类的基类。

6.子类可以覆盖父类的方法,将其定义为抽象的,这并不常见,但是非常适合子类中父类的方法实现失败的情况。

00-1010接口是类状结构,用于定义对象的公共操作,但其目的是指示相关或不相关类的对象的公共行为。

Java中的接口是用接口关键字修饰的。接口是抽象方法的集合。如果一个类实现了一个接口,它将继承接口的抽象方法。

需要注意的是,接口中的所有数据字段都是公共静态final,所有方法都是公共抽象,但是Java允许忽略这些修饰符。

虽然接口中定义的方法可以省略public修饰符,但该方法必须在子类实现中定义为public。

使用extends,一个接口可以继承其他接口,这样的接口称为子接口。例如,在下面的代码中,NewInterface是Interface1,…,InterfaceN的子接口。

实现NewInterface的类必须实现NewInterface、Interface1、…、InterfaceN中定义的抽象方法。接口可以继承其他接口,但不能继承类。一个类可以继承它的父类并同时实现多个接口。

的所有类都有一个公共根类Object,但接口没有公共根。类似于类,接口也可以定义类型。接口类型的变量可以引用实现接口的类的任何实例。如果一个类实现了一个接口,该接口类似于该类的父类。您可以将接口用作数据类型,并将接口类型的变量转换为它的子类,反之亦然。

给定这种继承结构,java可以在调用方法时根据对象动态决定如何调用特定的方法。但是有一个限制,子类必须是另一种动物。如果动物不可食用,此时不宜继承动物类。

定义一个表示可食用对象的类,只需让该类实现可食用接口。任何可食用对象都可以被传递来调用HowToEat方法。

网友转载外烟请保留链接:本文链接java中抽象类和接口的区别(java接口和抽象类有什么不同),http://fiows.com/lunwenfenxiang/49408.html谢谢合作!



<<spring事件机制实例(spring事件机制详解)   seo网站建设优化什么意思,网站内容如何优化>>

相关阅读:

iphone 11 pro max与iphone 12pro(2 max1) CES 2022-在Covid Surge、AMD和一加退学,加入微软、谷歌和英特尔。 iPhone 14谣言 – 发布日期,价格,SIM卡等(iphone14最新官方消息) 2022年最佳小手机