問題タブ [anonymous-class]

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 投票する
2 に答える
142 参照

.net - 匿名クラスや追加のクラスなしで、linq to sqlを使用してクラスのパーツをロードするにはどうすればよいですか?

3番目のバリアントを使用する方法はありますか?

0 投票する
6 に答える
12116 参照

java - Java 匿名クラスの効率性への影響

これら 2 つの方法で効率 (実行時間、コード サイズなど) に違いはありますか?

以下は、オブジェクトを作成して何もしない不自然な例ですが、私の実際のシナリオでは、新しいスレッド、リスナーなどを作成している可能性があります。違いが生じる可能性があるように、次のコードがループで発生すると仮定します。

匿名オブジェクトの使用:

最初にクラスを定義する:

0 投票する
3 に答える
4922 参照

c# - インターフェイスを実装する匿名クラス

メソッド内に次のコードがあります。

各要素がインターフェイス (ISelectable) を実装する要素のリストを必要とする関数を呼び出したいと思います。これが通常のクラスでどのように行われるかは知っていますが、この場合、いくつかのデモ データを入力しようとしているだけです。

インターフェイスを実装する匿名クラスを作成することは可能ですか?

このような:

0 投票する
3 に答える
1302 参照

c# - C#のアドホック構造体/クラス?

現在、SQLでリフレクションを使用しています。特殊なクエリを作成する場合は、別のクラスを継承する新しいクラスを作成し、特殊なクエリ用に2つのメンバー/列を追加することで、結果を取得するのが最も簡単です。次に、c#コードのlibに反映されているため、foreach(var v in list){v.AnyMember and v.MyExtraMember)と書くことができます。

クラスを分散させたり、メインのDB.csファイルを変更したりする代わりに、関数内でクラスを定義できますか?new {name = val、name2 = ...};と書くことで、匿名オブジェクトを作成できることを知っています。しかし、このクラスをジェネリック関数func(query、args);で渡す必要があります。

0 投票する
1 に答える
195 参照

java - 奇妙なリンクリスト/匿名クラスの動作-追加されたときに実行されますか?

この質問は、実際のメソッドをキューに入れて呼び出す方法に関連しています。とにかく、私は(結局のところ)匿名のクラスのアイデアを採用することにしました。問題は、匿名クラスをリンクリストに追加すると、実際にはすぐにexecute()が呼び出されることです...そしてそうではないはずです。Execute()は後で呼び出されます。とにかく、これは私が持っているものです:

run()は、子クラスによって実装される抽象メソッドです。実行されるのではなく、追加されたときに印刷される理由がわかりません。これは、performBehavior()が実際にはティックごとに1回ではなく複数回実行されていることを意味することを理解していますが、そうではありません。

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

java - Java で匿名クラスから変数を参照する

私は setonclick リスナを作成しています。そのボタンを参照して、そのプロパティを変更できるようにしたいと考えています。つまり、無効にしますか?

次のメッセージが表示されます。

別のメソッドで定義された内部クラス内の非最終変数 confirmButton を参照できません

0 投票する
5 に答える
10848 参照

java - Java:ローカル変数を使用する匿名の内部クラス

userIdここで匿名の内部サブクラスでこのメソッドに渡された値を取得するにはどうすればよいですか?

このエラーが発生します:

別のメソッドで定義された内部クラス内の非最終変数userIDを参照することはできません

値が不明な変数であるため、finalとして割り当てることはできないと確信しています。この構文は何らかの形でスコープを保持していると聞いていたので、まだよくわからない構文のトリックがあるに違いないと思います。

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

c# - 匿名クラス、一時データ、および匿名クラスのコレクション

私は匿名のクラスに不慣れです、そして今日私は私が本当にそれらを使うことができると感じた最初のケ​​ースに出くわしたと思います。クラス内に一時データを格納することでメリットが得られるメソッドを作成しています。そのクラスはそのメソッドの外部では意味がないため、匿名クラスを使用することは確かに理にかなっています(少なくともその時点では)。

コーディングを始めた後、私は確かにいくつかの譲歩をしなければならなかったように見えました。計算などを一時変数に割り当てて、デバッグ中に論理チャンクで一度に計算のビットを検証できるようにするのが好きです。次に、より単純なものを最終値に割り当てたいと思います。この値は匿名クラスにあります。

問題は、匿名クラスを使用してコードを簡潔に実装するために、LINQを使用したいということです。ここでの問題は、ステートメント内でそのような一時的な計算を実行できないと思うことです。 またはあなたはできますか?

これが私がやりたいことの不自然な例です:

注:実際に辞書にキーを追加しない限り、これを実行しようとしないでください:)

LINQでの匿名クラスの作成は素晴らしいですが、計算を1行で実行する必要があります。計算が私が示したものよりもはるかに長いと想像してください。しかし、特定の値を取得するためにいくつかの辞書ルックアップを実行するという点で似ています。デバッグは苦痛になる可能性があります。

具象クラスを使用すると、一時変数を使用するというこの問題を回避できますが、すべてを簡潔に行うことはできません。はい、LINQステートメントで一時変数を保存できるように要求しながら、簡潔さを求めていると言っているのは少し矛盾していることに気づきました。

ポイントをループするときに匿名クラスを作成しようとし始めましたが、すぐにそれを保存する方法がないことに気付きました!リストを使用することはできません。リストはクラスの匿名性全体を失うだけだからです。

誰かが私が探しているものを達成する方法を提案できますか?またはいくつかの中間点?StackOverflowで他のいくつかの質問を読みましたが、どれも私のものとまったく同じではありません。

0 投票する
1 に答える
4077 参照

java - 生成された匿名クラスのnewInstanceのInstantiationException

更新:これは多かれ少なかれ重複であり、 build2でローカル変数を渡すためのコンストラクターを追加するコンパイラーマジックであることが判明しました。

そのようなインターフェースを考えると:

public interface IFoo { public int get(); }

以下のコードは、build2によって返された値に対してgetClass()。newInstance()を呼び出そうとすると、1、1、2を出力し、例外をスローしますが、build1の戻り値に対して同じものを呼び出そうとすると例外をスローします。なぜ何かアイデアはありますか?

私のデバッガーは、newInstance()呼び出しで、getConstructor0がNoSuchMethodExceptionをスローしていることを示しています。

0 投票する
6 に答える
2811 参照

java - 匿名の内部クラス変数にアクセスする

外部クラスからiにアクセスする方法は?

私はこのようにそれを行うことができます

しかし、「i」を取得すると、ハッシュセットのインスタンスを取得できません。両方を取得する方法はありますか?好奇心からの質問です。実用的なアプリケーションはあまりありません。実行できるかどうかを知りたいだけです。 。