抽象用于向用户隐藏函数的内部功能。他们可以与函数交互并生成结果,但不知道结果是如何生成的。
简单来说,抽象就是用来对用户隐藏不相关的数据,以降低程序的复杂度。 在 Python 中借助 ABC 模块,我们可以实现抽象。
抽象类也可以作为其他类的基石,因为你不能为抽象类创建对象,所以访问元素的唯一方法是使用继承。
问题内容: 在以下代码中,我创建了一个基本抽象类。我希望所有继承自其的类都提供该属性,因此我将该属性设置为。 然后,我创建了一个名为的子类,该子类旨在提供一些功能,但仍保持抽象。中没有属性,但是python实例化了该类的对象而没有错误。一个人如何创建抽象属性? 问题答案: 从Python 3.3 开始,修复了一个错误,这意味着装饰器现在应用于抽象方法时,可以正确地标识为抽象。 注:订单的问题,你必
问题内容: 我试图通过使用抽象基类MutableMapping在Python中实现映射,但是在实例化时遇到了错误。我将如何制作该词典的工作版本,以便使用Abstract Base Classs 尽可能清楚地模拟内置 类 ? 一个很好的答案将演示如何进行这项工作,特别是无需子类化(我非常熟悉的一个概念)。 问题答案: 如何使用抽象基类实现字典? 一个很好的答案将演示如何进行这项工作,尤其是在不继承d
问题内容: 我得到了几种解释,但是到目前为止,我还无法理解Java中的抽象类和方法是什么。 有人说它必须与程序的安全性做些关系,另一些人说不是那样。 即使从Dietel&Dietel的书中,我也不明白它的目的。我们何时,何地,为什么使用它? 请像您正在教初学者一样进行解释,非常感谢您的帮助。 问题答案: 抽象类是无法实例化的类。唯一的目的是扩展其他类。 抽象方法是抽象类中的方法(必须声明为抽象),
问题内容: 如何在Go中实现抽象类?由于Go不允许我们在接口中包含字段,因此这将是一个无状态的对象。因此,换句话说,Go中的方法是否可以具有某种默认实现? 考虑一个例子: 由于无法将接口用作接收器,因此无法编译。 实际上,我已经回答了我的问题(请参见下面的答案)。但是,这是实现这种逻辑的惯用方式吗?除了语言的简单性之外,还有什么理由不使用默认实现吗? 问题答案: 一个简单的解决方案是移至参数列表(
问题内容: 什么是Java中的“抽象类”? 问题答案: 抽象类是无法实例化的类。通过创建可以实例化的继承子类来使用抽象类。抽象类为继承的子类做一些事情: 定义继承子类可以使用的方法。 定义继承子类必须实现的抽象方法。 提供一个公共接口,该接口允许子类与所有其他子类互换。 这是一个例子: 请注意,“ abstractMethod()”没有任何方法主体。因此,你不能执行以下操作: 没有实现的方法!因此