0
点赞
收藏
分享

微信扫一扫

抽象类的使用和作用

前言

今天我们一起来学习抽象类的使用,以及其作用。

抽象类和抽象方法

首先,我们来看看到底什么是抽象类。

抽象类是一种特殊的类,生来就是作为父类的,具有抽象方法。那我们就来看一下代码,通过代码我们来学习抽象类的定义和使用。

import abc


class Foo(metaclass=abc.ABCMeta):

    @abc.abstractmethod
    def test(self):
        pass


class Too(Foo):

    def test(self):
        print('test')


too = Too()
too.test()

foo = Foo()

test
TypeError: Can't instantiate abstract class Foo with abstract methods test

这里的Foo类就被称为抽象类,抽象类必须指定元类(metaclass)为abc模块的ABCMeta,抽象类中定义抽象方法,这里也需要加上装饰器。

通过程序运行结果可知,直接实例化Foo类会报错。

抽象类的作用

定义的抽象类不能直接实例化,抽象方法定义在抽象类中,子类必须要重写这个函数才可以使用。只所以会有抽象基类,这其实正是软件工程中一个很重要的概念,定义接口。我们想想,大型工程需要很多人一起合作开发,我们首先定义好抽象类,把需要的功能和事情定义好,做好接口,然后交给不同的程序员去开发即可。

今天的分享就到这了,我们下期再见~

举报

相关推荐

抽象类和抽象方法

抽象方法和抽象类

java的抽象方法和抽象类

接口和抽象类

抽象类和接口

抽象类

抽象类--

0 条评论