zoukankan      html  css  js  c++  java
  • 抽象类的知识

     1.抽象类的意义是?或者说为什么要有抽象类?

    抽象类是对多个类中共同方法的抽取,但是子类又有不同的实现,父类只能抽取出方法的名字,而不明确方法的具体实现.

    这种只规定子类拥有哪些方法,而不明确具体实现的父类,就应该定义为抽象类.

    抽象类只用来规范子类应该具有哪些行为,而不明确具体的动作.

    2.抽象类的特点是?

    抽象类和普通类的最主要区别在于:

    1.抽象类继承的()中写的是metaclass=ABCMeta

    2.在类体中有用@abstractmethod修饰的方法(需要子类重写的方法)

    3.抽象类中是否可以有非抽象方法?

    可以.

    4.抽象类中的抽象方法是否可以有方法体?

    可以.

    5.抽象类中是否可以有__init__方法?为什么?

    可以,因为抽象类中也可以有实例属性供子类继承.

    而实例属性必须在父类中初始化,子类对象才能继承.

    抽象类的__init__方法不能手动调用,只能是子类创建对象时自动调用的.

  • 相关阅读:
    [模板]杜教筛
    [NOIP2014]解方程
    [NOIP2016] 组合数问题
    [HAOI2011] Problem b
    Rmq Problem mex
    [模板]Link-Cut-Tree
    [SDOI2013]森林
    单调队列优化多重背包
    [USACO17JAN]Promotion Counting
    [模板] 点分治
  • 原文地址:https://www.cnblogs.com/Zhao159461/p/10618466.html
Copyright © 2011-2022 走看看