2016 - 2024

感恩一路有你

python学了有什么用 python下的抽象类的用途和意义?

浏览量:2877 时间:2021-03-15 09:23:35 作者:admin

python下的抽象类的用途和意义?

抽象类不完整,只能用作基类。

它不同于非抽象类:1。抽象类不能直接实例化,对抽象类使用new运算符是编译时错误。

尽管某些变量和值在编译时可以是抽象类型,但这些变量和值必须为null或包含对从抽象类派生的非抽象类实例的引用。

2. 允许(但不要求)抽象类包含抽象成员。

3. 抽象类不能被密封。

从抽象类派生非抽象类时,这些非抽象类必须具体实现所有继承的抽象成员,以便重写这些抽象成员。

在以下示例中:抽象类a{public abstract void f()}抽象类B:a{public void g(){}}抽象类C:B{public override void f(){//f}}抽象类a引入抽象方法f。

类B引入另一个方法g,但由于它不提供f的实现,B也必须声明为抽象类。

C类重写F并提供具体的实现。

由于C中没有抽象成员,因此可以(但不是必须)将C声明为非抽象类。

抽象类与接口密切相关。

但是接口比抽象类更抽象,主要体现在它们的区别上:1)类可以实现无限的接口,但只能继承一个抽象类(或任何其他类型)的接口,从抽象类派生的类仍然可以实现接口,因此,接口被用来解决多重继承的问题。

2)抽象类可以有非抽象方法,接口不能,抽象类中的方法只是一个声明,没有具体实现的方法必须用public修改。

3)抽象类中的成员变量可以由不同的修饰符修改,接口中的成员变量默认为静态final。

4)这也是最重要的一点,其实质是“抽象类是对象的抽象,接口是行为规范”。

抽象类中的方法不一定是抽象方法吗?

这是一个从对象中删除不重要细节的过程。只保留那些描述物体本质特征的关键点。例如:苹果、香蕉、普通水果、桃子等。它们的共同特点是水果。水果概念的获得过程是一个抽象的过程。抽象类和方法的目的是去掉多个类的公共属性,让其他类作为单个类继承它们。当我们需要使用多态性时,一些方法必须在子类中重新定义。让我们看一下各种语言的编写方法:C、Java和animal的编写方法。爪哇,猫。爪哇,狗。爪哇,主要。Java、python

python学了有什么用 python编程 爬虫python

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。