問題タブ [method-invocation]
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 - メソッドの上書き: スーパーメソッドに「注入」する方法は?
3 つのクラスがあり、一方が他方のサブクラスであると仮定します。それぞれが親のメソッドを上書きします。
を呼び出すとnew FinalClass().doStuff()
、メソッドの呼び出し順序は次のようになります。
performFinalTasks();
performMiddleTasks();
performBaseTasks();
perfomFinalTasks()
と の間performMiddleTasks()
に
持っていきたいperformBaseTasks()
。これどうやってするの?
performMiddleTasks();
performFinalTasks();
performBaseTasks();
c# - タイプに応じてディクショナリのジェネリックメソッドを処理する
私は一般的な方法を持っています
ユーザーがイベントに登録し、このデリゲートを提供できるようにします。タイプに応じてデリゲートのリストを保存する必要があります。
タイプとオブジェクトの辞書に保存してみました。メソッドを追加するとき、私はそれをにキャストします
Tによると、しかし、イベントが発生したとき、私はTを持っていないので、ジェネリックハンドラーの関連リストにキャストできません(私はタイプを持っていますが、Tは持っていません)
タイプごとにmethodInfoリストを保存することでこれを解決しました
ただし、問題は、このアプローチが静的な場合にのみ機能することです。そうでない場合は、クラスの型が必要になります。
この問題の解決策はありますか?
一般的なイベントを有効にします...ありがとう!
javascript - メソッド呼び出しパターンのJavascript「this」ポインタがオブジェクトを指していない
Javascriptでメソッド呼び出しパターンを使おうとしています。関数をオブジェクトメンバーとして宣言します。
Javascript:The Good Partsによると、これにより、this
ポインタが囲んでいるオブジェクトを参照するようになります。私が以前にこれを試したとき、これは事実でした。
以下のコードのサンプルではthis
、単一のステートメントによるポインター参照は、オブジェクトではなく関数console.log
を指しています。コードを再確認しましたが、正直なところ何が起こっているのかわかりません。
私はこれに別の目を使うことができました。私がここで見逃していることは本当に明白なことですか、それとも間違った行動を期待していますか?ありがとうございました。
編集:投稿したコードに誤りがありました(流動的です)。匿名関数内のキーワードはthat
、ではなく、である必要がありthis
ます。修理済み。
ダブルエディット:モジュール内に残りのコードを追加しました。私はcommonJSモジュールを(使用しているgameJSライブラリに従って)作成しようとしています。それがどこで問題になるかはわかりませんが、問題があるのではないかと思います。これは何かを変えますか?
Chromeの開発コンソールからの出力:
c# - if ステートメントでメソッド呼び出し元を使用する
私がやろうとしているのは、リスト ボックス内の項目が選択されているかどうかを確認することです。
メソッドは別のスレッドで実行されているため、メソッド呼び出し元を使用する必要があると思います。
選択した項目が null の場合、文字列リストがそれを保持しないため、このコードは爆発します。そのため、上位 2 行を組み合わせて if ステートメントで null をチェックする方法が必要です。
ありがとう
java - リフレクションを使用して配列パラメーターでメソッドを呼び出す
文字列の配列を引数としてメソッドに渡すことにより、別のクラスから静的メソッドを実行するメソッドを作成しようとしています。
ここに私が持っているものがあります:
このように:
これを実行する必要があります:
しかし、私はIllegalArgumentException
sを得ています。
java - Groovyのメソッドとメタメソッドの違いは何ですか?
API ドキュメントはこちら: http://groovy.codehaus.org/api/groovy/lang/MetaMethod.html
MetaMethod を次のように説明します。
[A MetaMethod] は、リフレクションを使用してメソッドを呼び出さないことを除いて、メソッドに少し似た Java オブジェクトのメソッドを表します。
呼び出しの「リフレクションを使用しないメソッド」とは、ドキュメントが正確に何を意味するのですか?
java - Java HashMap/HashSet ポリモーフィズム
スーパークラスが 3 つの直下のサブクラス、Subclass1、Subclass2、Subclass3 を持つ継承チェーンがあります。
私は持っています:
map に整数値 1、2、および 3 の 3 つのハッシュマップを含めたいと考えています。これらの 3 つのハッシュマップはそれぞれ、スーパークラスのサブクラスを 1 つだけ含む HashSet の値を持ちます。
たとえば、 map.get(1) は次を参照する必要があります
しかし、コンパイラ エラーのため、上記の HashMap をマップに追加することはできません。