問題タブ [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 投票する
3 に答える
8099 参照

java - Java:anon内部クラスからローカル変数にアクセスしますか?(PriorityQueue)

PriorityQueueを使用して、グラフのトポロジカルソートを実行したいと思います。簡潔にするために、コンパレータには匿名の内部クラスを使用したいと思います。ただし、g見ているノードの程度を判断するには、グラフにアクセスする必要があります。これは可能ですか?

修正されたコード

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

java - 匿名クラスの質問

私はこの行に少し疑問を持っています:

匿名クラスはコンストラクターを定義できません

次に、次の構文で Anonymous クラスも定義できる理由を説明します。

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

java - パブリック列挙型への参照は匿名クラスになります

コンパイル時に、予期しない匿名クラスを取得しています。関連するコードが続き、さらに詳細な説明が続きます。

CircuitType.java全体:

Auditor.javaの3〜9行目:

Auditor.javaの104〜121行目:

Circuit.javaの1〜5行目:

コマンドが

が実行されると、匿名クラスAuditor$1.javaが生成されます。明らかに、ファイルはすべて、他に何も含まれていないファイルシステムディレクトリに隣り合って配置されています。

行104〜121がコメント化されている場合、匿名クラスは生成されません。

最初はパッケージの問題だと思っていたので、3つのクラスをパッケージに入れましたが、パッケージを機能させるには十分な知識がありませんでした。それが本当にパッケージの問題である場合、誰かがそれらにラベルを付ける方法を正確に説明できますか?ただし、必要がなければ、パッケージ化する必要はありません。

匿名クラスが問題になる理由は、そのようなクラスが通常名前空間の問題を意味するという事実に加えて、自動コンパイルに使用するMakefileを壊してしまうためです。

アップデート


添付されているのは、この謎に光を当てることを願っているコンソールセッションです。

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

java - Javaは匿名クラスを「キャッシュ」していますか?

次のコードを検討してください。

  • Javaはのクラスをどのように扱いcurrentListますか?
  • 200個のオブジェクトごとに異なるクラスと見なされますか?
  • 最初のオブジェクトが作成された後でも、パフォーマンスが低下しますか?
  • どういうわけかそれをキャッシュしていますか?

私はただ興味があります:)

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

c# - C# で匿名クラスをシミュレートする方法

私は C# で小さなデータ構造ライブラリを作成していますが、アーキテクチャ上の問題に直面しています。基本的に、ビジター パターンを実装するクラスがあり、ビジターには多くの可能な実装があります。

ビジターを渡したいときはいつでも、ビジター クラスを作成し、インターフェイスを実装して、次のように渡す必要があります。

自明ではない数のビジター実装があると非常に面倒になるため、定型コードをそれほど多く書くのは好きではありません。

匿名クラス Java (概念コード)に似たものを書きたい:

C# でインターフェイスの実装を使用して匿名クラスをシミュレートする方法はありますか?

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

c++ - 匿名クラスの仮想テーブル

私のコードにはこれに似たものがあります:

これにより、次の出力が得られると予想されます。

GCC(3.4.5だと思います)でコンパイルすると、そうなります。

ただし、これを Visual Studio 2008 でコンパイルして実行すると、次のようになります。

興味深いのは、Base から派生した構造体に名前 ( struct s1 : public Base) を付けると、正しく動作することです。

あるとすれば、どの動作が正しいですか? VS は単純なだけですか、それとも標準に準拠していますか? ここで重要な何かが欠けていますか?

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

c# - 辞書のカスタムキーとして匿名クラスを作成する

辞書を使用している間、私は常にGetHashCodeとEqualsをオーバーライドします(または辞書にカスタム比較子を提供します)。

キーとして匿名クラスを作成すると、裏で何が起こりますか?

サンプルコード...

このコードは期待どおりの結果をもたらしますが、匿名クラスにGetHashCodeメソッドとEqualsメソッドを提供していません。このコードは、匿名クラスのアイテムに基づいてアイテムをグループ化するのに失敗するべきではありませんか?

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

java - Java の匿名内部クラス内の外側のクラスの非 final フィールドの参照

Java では、次のようなことができることを知っています。

Jobこれにより、将来のある時点で匿名が実行されます。これが機能するのは、匿名クラスが外側のスコープで final 変数を参照できるためです。

私がよくわからないのは、次のケースです。

この場合、私の匿名Jobは、囲んでいるクラスの非最終フィールドを参照しています。greetingジョブが実行されると、フィールドの値は、ジョブが作成されたときと同じように表示されますか?それとも、ジョブが実行されているときと同じように表示されますか? 私は答えを知っていると思いますが、それは興味深い質問だと思いました.

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

asp.net-mvc - 匿名クラスとIDictionaryの速度差ASP.NET MVC の htmlAttributes 用

URL生成の微調整を含むいくつかの手法を使用して、ASP.NET MVCアプリケーションを最適化しようとしています: http://www.chadmoran.com/blog/2009/4/23/optimizing-url-generation-in-aspnet- mvc-part-2.html

匿名クラスの代わりに RouteValueDictionary を使用した場合の速度差が非常に大きい場合、html 属性を定義するときに匿名クラスの代わりに Dictionary を使用することも検討する必要がありますか?

たとえば、これを行う必要があります。

または、これを行うことでさらに最適化する必要があります:

Url.Action を使用するか、RouteLink 手法を使用する方がさらに高速であることはわかっていますが、速度のために匿名クラスを完全に回避する必要があるかどうかは疑問です。