問題タブ [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.
java - 次の二重中括弧を使用したこのコンストラクター呼び出しは何ですか?
残念ながら、私は約 5 年間 Java のコーディングを行っていないため、次のコードがどのように、またはなぜ機能するのかまったく思い出せません。
私は同様の例に出くわし、これに分解しました。コメントの下の部分に重点が置かれています。コンストラクター表記の後に二重括弧で囲まれたブロックが続きません。残念ながら、Java のドキュメントや Google を使用しても何も見つかりません (Google で検索する必要がある単語は何ですか?)。
だからここに私の質問があります:
- この表記法/構文はどのように呼ばれますか?
- それに関するドキュメントはどこで読めますか?
誰かが最初の質問に答えてくれれば、2 番目の質問に自分で答えられると思います。
明確にするために:出力がJohn Johnson
;) であることは知っていますが、なぜそれが機能しているのかわかりません。
java - Javaのインスタンス化されていない匿名クラス
Javaを書いてから約6年になりますので、さびはご容赦ください。
オブジェクトを渡す必要があるライブラリメソッドを使用していClass
ます。このメソッドを動的に何度も呼び出す必要があるため、毎回わずかに異なるClass
引数を使用して、匿名クラスを渡したいと思いました。
ただし、これまでに見つけたすべてのドキュメント/チュートリアルでは、匿名クラスのインスタンス化についてのみ説明しています。例:
インスタンス化せずに匿名クラスを定義できますか?または、おそらくもっと明確にClass
、匿名クラスのオブジェクトを作成できますか?
java - Java の anon クラスに対する .Net デリゲートの本当の利点は?
.Net デリゲートの多くの使用法は、インターフェイスと匿名クラスの組み合わせを使用して Java でエミュレートできることは知っていますが、デリゲートが真の利点を持ち、同等の Java がない状況はありますか?
java - Private inner class synthesizes unexpected anonymous class
When you compile a Java class with a private inner class, it appears that an anonymous class is automatically synthesized along with it for some reason. This class is sufficient to reproduce it:
When compiled, this generates the expected SynthesizeAnonymous.class
and SynthesizeAnonymous$InnerClass.class
files, but it also generates a strange SynthesizeAnonymous$1.class
file that corresponds to an anonymous subclass of java.lang.Object
that was synthesized. If you look at the disassembly with javap
, it appears the default constructor of InnerClass
gains a hidden parameter of this anonymous type, and that null
is passed to it when the new InnerClass()
is called.
Why is this class created? It's created even if InnerClass
isn't static, but it isn't created if InnerClass
isn't private or no instance of InnerClass
is ever created. Is it some form of access control? How does that work?
c# - Anonymous クラスを DataSource とする BindingSource の列
DataSource が匿名クラスである BindingSource の現在の行の列を選択する方法はありますか?
の現在の値を取得したいu.ID
。
c# - 匿名タイプにキャスト
今日は次のような問題がありましたが、解決策はないかと思いました。
私のアイデアは、匿名クラスを作成し、それをWinFormBindingSourceのデータソースとして使用することでした。
これまでのところ問題なく動作します。
私が抱えていた問題は、BindingSourceの「Current」プロパティからIdを取得することでした。これは、匿名タイプにIDをキャストして戻すことができないためです。
「Current」のタイプを見つけて「Id」プロパティにアクセスする方法はないと思いますか?多分誰かが良い解決策を持っています...
Idを取得する他の(そしてより良い)方法があることを私は知っています(反射、ComboBoxから値を読み取る、匿名のtpyeを使用しない、...)bsOptionsからTypeを取得できるかどうかだけ興味があります。エレガントな方法で現在。
java - Groovyの匿名の内部クラス
groovy-wicketの統合を調べていますが、イベントハンドラーを作成するときに、匿名の内部クラスがないことが問題のようです。このコードを書くためのよりグルーヴィーな方法はありますか
c# - 動的匿名型変数の作成
匿名型変数を作成し、後でさらにプロパティを追加できますか?
たとえば
var x = new { Name = "Ahmed" };
、それに追加Age
したいですか?これどうやってするの?
別の質問: いくつかのブログで、AnonymousType
このクラスの名前空間は何ですか? ここに例があります http://www.codeproject.com/KB/cs/AnonymousTypesInCSharp.aspx
c# - 匿名デリゲートのリストのシリアル化
この質問は私の質問と非常に似ているかもしれませんが、必要な答えがわかりません。という名前のクラスCASM
があり、List<Action>
. このクラスをシリアライズしたい (BinaryFormatter
または同様のものを使用して)。このクラスと で参照されているすべてのクラスは、Action
正しい属性[Serializable]
を持っています。[NonSerializable]
シリアル化が試行されたときに問題が発生します-次のエラーが発生します:
これ<>c__DisplayClass2c
は、アプリケーションで使用しているさまざまな種類の匿名デリゲートを保持する、自動生成された内部クラスです。ただし、下の画像からわかるように、そうではありません[Serializable]
。
代替テキスト http://bayimg.com/image/maebbaacj.jpg
これが機能するようにアプリケーションを変更する最良の方法は何ですか? 独自の<>c__DisplayClass2c
型クラスを作成し、シリアライズ可能にしますか? それとももっと良い方法がありますか?
編集:最後に、自動生成されたクラスではなく、独自のクラスを作成しました。デバッグにも役立ちます。実際には、単にb__12()
.
java - Javaリフレクション:匿名の内部クラスを取得するにはどうすればよいですか?
別のクラス()内に匿名の内部クラスがありSomeClass
ます。
両方とも空の配列SomeClass.class.getClasses()
を返します。SomeClass.class.getDeclaredClasses()
Class
'Javadocでこれに関するヒントを見つけることができませんでした。
匿名の内部クラスは、何らかの方法でリフレクションを使用して取得できますか?
匿名内部クラスと通常の内部クラスのその他の注目すべき違いは何ですか?