問題タブ [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()またはsuper()メソッドを使用できることがわかりました。Ext.extend()

このコードでは、MyPanelの名前を別の名前に変更するのは簡単です。1行を変更するだけです。

しかし、私には疑問があります...

  • 私はこれがどこにも文書化されているのを見たことがなく、古い知恵は、文書化されていない行動に頼るべきではないと言っています。

  • ExtJSソースコードでこれらsuperclass()とメソッドの単一の使用法を見つけられませんでした。supr()使用しないのになぜ作成するのですか?

  • たぶん、これらのメソッドはExtJSの古いバージョンで使用されていましたが、現在は非推奨になっていますか?しかし、それはとても便利な機能のようです、なぜあなたはそれを非推奨にするのですか?

それで、私はこれらの方法を使うべきかどうか?

0 投票する
2 に答える
756 参照

java - サブクラスのメソッドをスーパークラスの JLabel にどのように配置しますか?

これがクラスとスーパークラスです。質問は次のとおりです。

テストドロー:

マイシェイプ:

クラス TestDraw で、MyShape からの toString をウィンドウのテキスト ボックスに入れようとしましたが、「JLabel southLabel = new JLabel(toString());」を実行すると、それは私の toString() が静的である必要があることを伝えました。toString を静的にする場合を除いて、それはすべて問題なくダンディです。その文字列の取得を静的にしたいのですが、これは悪いことです...何かアイデアはありますか?

toString() をスーパークラスに入れてみましたが、同じ問題が発生し、先生に尋ねてみましたが、彼は「本を見てください」と言います...章を2時間読んで、まだ見つけていません3回目を読んだ後の例。

前もって感謝します!

PS: 回答はいいですが、説明が優先されます!

0 投票する
2 に答える
669 参照

c# - オブジェクトの具象クラスまたは抽象クラスをすべて一覧表示する

C# で、リフレクションまたはその他のメソッドを介して、オブジェクトのすべてのスーパークラス (具体的および抽象的、主に具体的なクラスに関心がある) のリストを返すことは可能ですか? たとえば、「Tiger」クラスを渡すと、次のように返されます。

  1. ネコ
  2. 動物
  3. 物体
0 投票する
3 に答える
2902 参照

ruby - define_method で定義されたメソッドで super を呼び出す

User で呼び出されるメソッド (属性) に基づいてメソッドを定義する Model クラスを作成しました (これは Model から継承されます)。問題は、define_method で定義されたメソッドをオーバーライドできず、super を呼び出して定義済みのメソッドに渡すことができないことです。これは、定義されたメソッドがモデルではなくユーザー自体に追加されるためだと思います。そのため、実際にはスーパークラス (つまりモデル) にメソッドがありません。

これを行う理由は、ほとんどの属性をデータベースに直接保存する必要があるためですが、パスワードなどの一部の属性には追加の処理が必要です。

これを機能させるためにコードを変更する方法はありますか? 動的に作成されたメソッドをオーバーライドする方法が必要です。

0 投票する
4 に答える
2391 参照

smalltalk - Smalltalk スーパークラスとメタクラス?

私はOOPを初めて使用しますが、「手続き型」のバックグラウンドを持っています。

私は現在、GNU Smalltalk と Lovejoy の「Smalltalk: Getting The Message」を介して 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()メソッドがありますが、明らかに比較の問題には使用されていません。オブジェクトのサブタイプを取得するにはどうすればよいですか?