问题标签 [superclass]

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.

0 投票
6 回答
40755 浏览

javascript - 在 ExtJS 中调用超类方法的更好方法

我读过的所有 ExtJS 文档和示例都建议像这样调用超类方法:

我使用这种模式已经有一段时间了,主要问题是,当你重命名你的类时,你还必须更改所有对超类方法的调用。这很不方便,我经常会忘记,然后我必须追查奇怪的错误。

但是阅读Ext.extend()我发现的源代码,我可以使用添加到原型的superclass()orsuper()方法:Ext.extend()

在这段代码中,将 MyPanel 重命名为其他名称很简单——我只需要更改一行。

但我有疑问...

  • 我没有在任何地方看到过这种记录,而古老的智慧说,我不应该依赖无证行为。

  • 我在 ExtJS 源代码中没有发现这些superclass()和方法的单一用途。supr()当您不打算使用它们时,为什么要创建它们?

  • 也许这些方法在某些旧版本的 ExtJS 中使用过,但现在已被弃用?但它似乎是一个非常有用的功能,你为什么要弃用它?

那么,我应该使用这些方法吗?

0 投票
2 回答
756 浏览

java - 如何将子类方法放入超类 JLabel 中?

所以这是类和超类,要遵循的问题:

测试图:

我的形状:

在 TestDraw 类中,我试图将 MyShape 中的 toString 放入窗口上的文本框中,但是当我执行“JLabel southLabel = new JLabel(toString());”时 它告诉我的 toString() 需要是静态的。这一切都很好而且很花哨,除了当你让 toString 静态时,它想让那个字符串中的 get 成为静态的,这很糟糕......有什么想法吗?

我试过把 toString() 放在超类中,但它给出了同样的问题,试着问老师,但他说“看书”嗯……读了两个小时,我还没有找到我第三次通读后的一个例子。

先感谢您!

PS:答案很好,但最好解释一下!

0 投票
2 回答
669 浏览

c# - 列出对象的所有具体或抽象类

是否可以在 C# 中通过反射或其他方法返回对象的所有超类(具体和抽象,主要对具体类感兴趣)列表。例如传入“Tiger”类将返回:

  1. 老虎
  2. 动物
  3. 目的
0 投票
4 回答
15116 浏览

python - 在 Python 中检查 A 是否是 B 的超类

所以 p2 是 p1 的子类。有没有办法以编程方式找出 p1 是 p2 的超类[之一]?

0 投票
3 回答
2902 浏览

ruby - 在由 define_method 定义的方法上调用 super

我创建了一个模型类,我在其中定义基于在用户中调用的方法(属性)(继承自模型)的方法。问题是我无法覆盖define_method定义的方法,调用super传递给定义的方法。我猜这是因为定义的方法是添加到用户本身,而不是模型,所以它实际上在超类(即模型)中没有方法。

我想这样做的原因是因为大多数属性应该直接保存到数据库中,而一些属性,如密码,需要一些额外的处理。

有什么办法可以更改代码以使其正常工作吗?我需要一种方法来覆盖动态创建的方法。

0 投票
4 回答
2391 浏览

smalltalk - Smalltalk 超类与元类?

我是 OOP 新手,但有“程序”背景。

我目前正在尝试通过 GNU Smalltalk 和 Lovejoy 的“Smalltalk:获取消息”来了解 OOP。

我对元类和元类类与超类的区别感到困惑。可以看到超类->类->子类的继承流程;但我不知道元类如何/在哪里适合。TIA ...

0 投票
4 回答
653 浏览

java - Java:如何编写同时指定超类和接口的强制转换?

我的 Java 程序中发生了这样的事情:

我怎样才能投射 o 以便它工作?如果不使用泛型,似乎无法在变量声明中同时指定基类和接口。我不认为泛型在这里可以工作,因为 o 是使用反射动态创建的,所以它的实际类在编译时是未知的。

(是的,我知道这是一件很奇怪的事情。但我确实需要超类和接口的功能。我想我可以在运行时使用 instanceof 进行所有类型检查,但这似乎是 Java 1.4...)

0 投票
6 回答
117968 浏览

java - 如何将构造函数从超类继承到子类

如何将构造函数从超类继承到子类?

0 投票
7 回答
339388 浏览

python - 如何在 Python 中调用超级构造函数?

在我使用过的所有其他语言中,超级构造函数被隐式调用。如何在 Python 中调用它?我会期待super(self),但这不起作用。

0 投票
2 回答
220 浏览

java - 如何获取类的类型进行比较

我有这个对象,它是超类的一个实例。我想知道该对象到底是哪个子类,以便我可以决定如何处理它。有这个 getClass() 方法,但它显然不用于比较问题。如何获取对象的子类型?