问题标签 [abstract-methods]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
inheritance - Dart 中的抽象方法
我正在实现一个继承层次结构,其中派生类构造仅包含对基类构造函数的调用。然后基类构造函数调用仅在派生类中实现的方法。
我有一个基本的实现,但 DartEditor 当然会抱怨基类中缺少方法。我怎样才能让它快乐?
编辑:在发布我的问题之前我还没有运行任何代码,结果证明方法绑定以人们期望的方式工作:
上面的代码输出以下内容,这是所需的行为。B
的构造函数调用调用A
的构造函数x()
。但由于有一个x()
定义 for B
,这就是所谓的:
有趣的是,虽然x()
被A
's 的构造函数调用,但 Dart 不知何故知道调用B
's x()
。我认为这是因为调用链大致如下所示:
在运行时,Dart 检查调用链以确定要绑定到哪个对象x()
。
java - 没有实现时抽象方法如何工作?
根据这个定义,我知道什么是 anabstract method
和 an abstract class
:
抽象方法:
抽象方法是在没有实现的情况下声明的方法
抽象类:
抽象类是声明为抽象的类——它可能包含也可能不包含抽象方法
所以,在 android中有很多abstract classes
和abstract methods
例如,其中一个是ActionBar
类,它的一个abstract method
是setSubtitle(int resId)
现在,如果您想为您的活动设置字幕,请执行以下操作:
wheregetActionBar
返回一个具有抽象方法的 ActionBar。但是当方法没有实现时它是如何工作的setSubtitle
呢?
php - PHP 5 中使用接口方法的附加参数
我有一个问题,接口中的方法可以像抽象方法一样在实现过程中获取额外的参数吗?例如:
?>
java - 当一个类至少有一个抽象方法时,为什么它必须是抽象的?
我无法创建包含抽象方法的具体类的原因是什么?
是否只是为了确保没有抽象方法定义就不会创建任何对象?或者这个限制还有其他合理的理由吗?
java - 为什么空枚举不能有抽象方法?
我无意中发现以下内容无法在 Eclipse 中编译:
JLS似乎验证了这种行为:
如果枚举声明 E 有一个
abstract
方法m
作为成员,这是一个编译时错误,除非 E 至少有一个枚举常量,并且 E 的所有枚举常量都有提供具体实现的类体m
。
我想知道这背后的原因是什么。为什么不将空枚举视为没有现有实现的抽象类?
angularjs - Typescript 1.6 抽象方法
我想做这个:
但我不能因为派生类方法中的“this”类型是“Base”。我怎样才能使我的代码工作?
请帮忙。谢谢
android - Android中抽象类的最佳示例
我正在尝试在 Android 中设计一个抽象类和方法,并通过从我的父 Activity 类扩展类来调用这些方法,但我不知道如何调用我的抽象方法。
我的代码:
MainActivity.java
我的活动.java
所以这是上面的代码片段,请告诉我,如何在 Android 中使用 Abstract,因为我以前从未这样做过。
java - 接口和抽象方法在使用上是否相似?
我在 Stack 上阅读了许多类似这个问题的链接,我决定问。
当我在 Java 中创建抽象形状类时,我认为该类必须有一个方法来getArea()
我认为有两种方法。
当我从 Shape 创建扩展类时,我在扩展类中重新定义 getArea() 。
Interface
那么我可以像这样使用来创建这个层次结构吗?
并创建这样的类:
然后为 Shape 的扩展类重新定义 getArea()。
我在里面有点糊涂。
在使用中决定接口和抽象方法的最佳方法是什么?
java - 抽象类和方法 | 意见模棱两可
我刚刚遇到了关于抽象类的两种不同意见:
1)有人说,抽象方法不能在具体(通用)类中使用;而抽象类可以同时具有抽象/非抽象方法
2)虽然,在youtube上高度关注的一个教程说,“任何有抽象方法的类,都会让它的类自动定义为抽象”
第二点与第一点完全相反;在实现它时,我确实只在第一个概念上取得了成功,但在第二个概念上却没有成功。但是,我仍然想在这方面有一个详细的说明,如果有人能耐心地帮助我的话。
javascript - javascript中真正的抽象方法
我想在 javascript 中创建一个抽象类,它实现某些方法,调用抽象方法并让“继承”类来实现这些抽象方法。我已经阅读了很多关于 js 原型的内容。javascript 中抽象类和方法的每一个建议实现似乎都是简单的继承,但不是真正的抽象。这是一个非常简单的示例来展示我想要实现的目标:
我的问题:是否有一种非 hacky、非解决方法在 javascript 中创建抽象类?