問題タブ [subclass]
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.
java - Java サブクラスに注釈を定義させるにはどうすればよいですか?
クラスが注釈を定義した場合、そのサブクラスに同じ注釈を定義させることは何とか可能ですか?
たとえば、単純なクラス/サブクラスのペアがあり、それを共有しています。@Author @interface.
私がやりたいことは、さらにサブクラスごとに同じアノテーションを定義するように強制し、将来のどこかを@Author
防ぐことです。RuntimeException
TestClass.java:
TestSubClass.java:
実行時にすべての注釈を列挙し、不足している をチェックできることはわかっています@Author
が、可能であればコンパイル時にこれを実行したいと考えています。
python - Pythonで省略記号スライス構文をどのように使用しますか?
これ は Python の隠し機能 で取り上げられましたが、この機能がどのように機能するかを説明する適切なドキュメントや例が見つかりません。
c# - ASP.NET での DropDownList のサブクラス化
組み込みの DropDownList を ASP.NET でサブクラス化し、機能を追加して自分のページで使用できるようにしたいと考えています。UserControl を使用してこれを実行しようとしましたが、内部の DropDownList が公開されていないことがわかりました (論理的にはそう思います)。答えをグーグルで検索しましたが、何も見つかりません。
私は実際のクラスを書くところまで来ました.DropDownListからサブクラス化することは可能ですが、ASP.NETページにファイルを登録してソースビューで使用することはできません. たぶん、クラスにいくつかのプロパティがありませんか?
何か案は?
python - 外部から呼び出されるオブジェクトメソッドと、サブクラスから呼び出されるオブジェクトメソッドを区別するための規則は何ですか?
私は、プライベート変数/メンバー/関数/へのPythonのアプローチの内外のほとんどを知っています...
しかし、外部利用のメソッドとサブクラス利用のメソッドをどう区別するかが決まらない。
次の例を検討してください。
この例では、subscribe はクラス/オブジェクトの外部ユーザーが使用するメソッドであり、event は外部からではなく、サブクラスの実装によって呼び出されるべきメソッドであることを明確にしたいと思います。
現時点では、パブリック API の両方の部分を考慮しているため、アンダースコアは使用しません。ただし、この特定の状況では、たとえば、外部 API にはアンダースコアを使用せず、サブクラス化可能な API には 1 つのアンダースコアを使用し、プライベート/内部 API には 2 つのアンダースコアを使用する方がクリーンに感じられます。ただし、内部 API を次のように呼び出す必要があるため、扱いにくくなります。
では、コーディング、ドキュメント、またはその他の規則は何ですか?
c++ - オブジェクトの型が C++ の特定のサブクラスであるかどうかを確認するにはどうすればよいですか?
私は使用の線に沿って考えていましたtypeid()
が、その型が別のクラスのサブクラスであるかどうかを尋ねる方法がわかりません(ちなみに、これは抽象的です)
.net - セパレートアセンブリのサブクラスの場合のNHibernate継承マッピング
コアプロジェクトにベースエンティティがあり、すべてのプラグインがベースエンティティを拡張していると仮定します。
ソリューションの構造:
NHibernateサブクラスを使用してこのマッピングを実装する方法はありますか?
java - サブクラス化を使用して、インターフェースを実装しない Java クラスを置き換える
たとえば、java.io.File は単なる具象クラスです。私の代替品は、Windows ショートカットの解決をサポートしています。抽象パスで正規化/正規化/解決を行う FileSystem オブジェクトにアクセスできないため、可能な .lnk ファイルを解決するためにコンストラクター パラメーターを前処理する必要があります。前処理の必要性により、純粋なサブクラス化が除外されます。super(...) を呼び出す前に前処理を行うことはできず、File は不変です。そこで、File を拡張してデリゲートを使用し、File のすべてのコンストラクターとメソッドをオーバーライドします (すべてのコンストラクターで super("") を呼び出します)。
これはうまく機能しますが、明らかに理想的ではありません。ファイルが変更された場合、新しいメソッドやコンストラクターをオーバーライドしていないため、基になる空の抽象パス名が公開されます。明らかな何かが欠けていますか?よりシンプルでより良い方法があるはずです。
c# - C#は、サブクラスインスタンスであることを知らずに、オーバーライドされたサブクラスメソッドを呼び出します
仮想メソッドを持つ基本クラスと、そのメソッドをオーバーライドする複数のサブクラスがあります。
これらのサブクラスの1つに遭遇したとき、オーバーライドされたメソッドを呼び出したいのですが、サブクラスの知識がありません。これを行うための醜い方法(値をチェックしてキャストする)を考えることはできますが、言語で行う方法があるはずです。リストに同じリスト内に複数のサブクラスを含めたいのですが、そうでなければ、明らかにリストを作成することができます。
編集:間違っていたコードのコメントを修正しました。これは、私が得た非常に適切な最初の答えにつながりました:)
例えば:
python - datetime.date をサブクラス化できないのはなぜですか?
以下が機能しないのはなぜですか (Python 2.5.2)?
datetime.date
に似ているが、機能が異なるクラスを作成したかったの__init__
です。どうやら私の関数は決して呼び出されません。代わりに、オリジナルdatetime.date.__init__
が呼び出されて失敗します。これは、3 つの引数が必要であり、1 つを渡しているためです。
何が起きてる?そして、これは手がかりですか?
ありがとう!
python - gtk.Builder、コンテナサブクラスおよびバインディング子ウィジェット
gtk.Builder定義ファイルでカスタムコンテナウィジェットを使用しようとしています。それらのウィジェットをインスタンス化する限り、それはうまく機能します:
ここで問題となるのは、そのダイアログ内にgtk.TreeViewウィジェットがあるということです。そのウィジェットをMyDialogインスタンス変数にバインドする方法を理解しようとしています。
私が考えることができる1つの安価な代替手段は、次のようなダイアログウィジェットを取得した後に追加のメソッドを呼び出すことです。
しかし、それはかなり厄介なようです。誰かがこれをすでに解決したか、それを実行する方法についてより良いアイデアを持っていますか?
ありがとう、