问题标签 [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.
python - 如何要求在 Python 中实现方法?
我在 Python 中使用鸭子打字。
不同对象作为 传入的地方object_to_flag
,都具有is_active
, is_spam
,is_offensive
属性。他们也碰巧有一个cleanup()
方法。
我传入的对象都具有相同的基类(它们是 Google App Engine 中的 db 对象):
我怎样才能使cleanup()
方法抽象,以便我可以为所有这些需要子提供实现的对象拥有相同的父类?
也许更重要的是,这是“pythonic”吗?我应该走这条路,还是应该只依靠鸭子打字?我的背景是 Java,我正在尝试学习 Python 的做事方式。
谢谢!
c# - 为 WCF 保留抽象方法服务器端的方法
我们正在强制执行所有域对象来实现 GetHashCode。
当我们通过 WCF 公开这些域对象时,以下生成的服务需要更新后修改才能编译。
关于如何保持对 GetHashCode 的要求,但删除客户端上任何代码的要求(作为更新或作为部分类)的任何想法?
c# - 提供通用和派生组合功能的抽象/虚拟成员 - C#
我以前做过这个 - 只是不记得诀窍了。
如果我有一个抽象类:
公共抽象类 Post
以及一组派生类:
公开课 照片 : Post
我想强制派生类实现一个名为Validate()的方法,但同时在Post级别提供核心验证。
我可以创建一个方法:public abstract void Validate() in Post,这将强制派生类实现该方法,但是我如何执行Post(基础)验证?
最终结果是我希望能够做到这一点:
我该怎么做?
python - 我应该在这个 Python 场景中使用抽象方法吗?
我不确定我的方法是否是好的设计,我希望我能得到一个小费。我正在考虑抽象方法的某个地方,但在这种情况下,我希望该方法是可选的。这就是我现在正在做的...
在上面的示例中,我只是在 PyMEL 中为 Maya 创建了 2 个圆弧,但我完全打算创建更多可能有也可能没有 createDrivers 方法的子类!所以我希望它是可选的,我想知道我的方法是否——好吧,我的方法是否可以改进?
java - JAXB 2.x:抽象方法被编组为属性
我有一个抽象根类,比方说A
。
而且我有几个扩展的实现类A
。
A
具有 FIELD 注释以及一些@XmlElement
带注释的属性。
A
还有一个抽象方法。
编组 ( B extends A
) 时,抽象方法返回的值被编组为属性。不像预期的那样,对吧?
有没有人有同样的问题,如何解决?
我正在使用 org.eclipse.persistence.moxy 2.1.2
c# - 更改继承类中的抽象方法签名
想象一下,我有一个名为 Engine 的类作为抽象基类。我也有从它派生的 ElectrictEngine 和 FuelEngine 类。
我想创建一种为发动机加油的方法。我是否应该将其作为基类级别的抽象方法并以通用方式命名,例如fillUpEnergy?
问题是,如果我有一个电动发动机,该方法采用的参数数量与燃料发动机需要传递的参数数量不同。所以,方法的签名是不同的。
此外,是否有任何聪明的方法可以为两个引擎使用通用方法,但用更具体的名称包装它?例如:对于燃油发动机,“refuel”,对于电动发动机,“chargeBattery”?同时对用户隐藏通用方法?
c# - 抽象方法使用 vs 常规方法
我想知道两种约定之间的区别:
- 使用抽象方法创建一个抽象基类,该方法稍后将在派生类上实现。
- 创建一个没有抽象方法的抽象基类,
但稍后在派生类的级别添加相关方法。
有什么区别?
java - 为什么你需要知道抽象类的方法是否是抽象的
我被问了一个问题。如下:
抽象类的 API 文档告诉您方法是否是抽象的。您何时以及为什么需要知道这一点?
任何帮助,将不胜感激。
c# - 请在使用抽象方法时解释此模式
我在很多地方看到过以下模式:
我不明白实际的区别,为什么不直接写成:
更新:上面的代码片段取自Ninject
没有指定接口的文档,但是查看实际源代码,我可以看到SimpleProvider<T>
实现了接口IProvider
,它解释了子调用的需要并回答了我的问题。
python - 检查模块中的类是否实现了正确的接口
我有以下界面:
我有一组模块都在同一个目录中。每个模块都包含一个实现我的接口的类。
例如 Launch.py :
假设我有 20 个模块,实现了 20 个类。我希望能够启动一个模块来检查某些类是否没有实现接口。
我知道我必须使用:
- issubclass(Launch, ProcessInterface) 以了解某个类是否实现了我的流程接口。
- 内省以获取我模块中的类。
- 在运行时导入模块
我只是不知道该怎么做。我可以设法在模块内使用 issubclass 。但是如果我在模块之外,我不能使用 issubclass。
我需要 :
- 获取目录中所有模块的列表
- 获取每个模块中的类
- 在每个类上做 issubclass
我需要一个可以做到这一点的功能草案。