問題タブ [anonymous-inner-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 - 匿名の内部クラスでの Java Eclipse Android 構文エラー
Androidで3つのボタンを備えた一種の「メニュー」をプログラムし、OnClickListenersがそれぞれからの入力を記録しようとしています。ただし、奇妙な構文エラーが発生します。
ここに私の MainActivity.java があります:
次のエラーが表示されます。
24 行目 - トークン "}" の構文エラー、このトークンを削除
94 行目 - 構文エラー、「}」を挿入して ClassBody を完成させます
このエラーが実際に構文エラーなのか、コンパイラによって誤って診断された別のエラーなのかはわかりません。
java - Javaでは、匿名クラスの外部から変数にアクセスするにはどうすればよいですか
例えば:
変数を使用することは許可されていi
ません.Eclipseは私にi
final
.
java - 内部クラス外のフィールドの修飾子を final に変更する必要があるのはなぜですか?
インナークラスで使用するときにフィールド final を設定する必要があるのはなぜですか? たとえば、なぜ textField の修飾子を final に設定する必要があるのでしょうか? 私の質問は、それが最終版であると宣言しないと、なぜ利用できないのでしょうか?
java - 変数内のクラスを使用してジェネリックでJava匿名内部クラスをインスタンス化する
Class
Java 7で、手元にあるオブジェクトを使用してジェネリック型で匿名の内部クラスをインスタンス化することは可能ですか?
インスタンス化しようとしているジェネリック クラスの簡略化されたバージョンを次に示します。
コンパイル時にビルドしたいクラスを指定するときに匿名の内部クラスを作成すると、うまくいきます。
このように実行時に決定した変数を使用できるようにしたいのですがClass
、まだ方法がわかりません:
また、運が悪かったので、これらの行に沿ってメソッドを作成しようとしました:
このようなことは可能ですか?
java - JDK ハッシュマップ ソース コード - 匿名内部クラスと抽象インスタンス化?
問題
Sun が HashMap クラスの entrySet、keySet、values メソッドをどのように実装したかを理解しようとしていますが、意味をなさないコードに出くわしています。
これらのメソッドは、HashMap 内の map.entry リストに直接リンクされたビューを返し、ほとんどの作業で (中央の HashMap イテレーターを参照する) 独自のイテレーターを使用することを概念的に理解しています。ただし、私の問題は、これらのビューが最初にどのようにインスタンス化されているかを正確に理解することです (これらはコピーではなく、実際の HashMap リストの上にあるものであるため)。
参照
このサイトにあるソース コードを見ています: http://developer.classpath.org/doc/java/util/HashMap-source.html
問題を引き起こしているスニペットの1つを次に示します。
質問
599 行目で、このコードは AbstractSet クラスをインスタンス化しています。これはどのように可能ですか?これを自分で再作成しようとしましたが、予想されるコンパイル エラーが発生しています。
行 601、606、612、617、および 622 のパブリック メソッドは匿名の内部クラスであると想定していますか? 私はこれまでこの機能を使用したことがないので、どのように機能するかはわかりません.オンラインで見つけた唯一の例はかなり単純化されています(そしてほとんどがSwingに関係しています). 行 599 は匿名クラスに直接関連していると想定する必要がありますが、その方法に従っていません。
誰かが私にこれを説明してくれたら、とてもありがたいです! ありがとう!
android - Androidのピカソで匿名クラスはどのようにGCされますか?
誰かがここでコメントを説明してくれますか:
ガベージ コレクションが発生する可能性があるため、Picasso を呼び出すときに Target の匿名クラスを作成しないでください。メンバー フィールドを強力な参照として保持し、GC されないようにする
ImageViewAction.javaの 30 行目で、その Callback は強い参照です。
Callback が匿名クラスであると仮定すると、その親クラスへの参照が作成されるため、親も GC されるのを防ぐことができます。
Action.javaの 48 行目によると、ターゲット自体は WeakReference ですが、それはコールバックではありません。
誰かが私が誤解していることを説明できますか?
java - 匿名クラスからメイン クラスにアクセスするにはどうすればよいですか?
私は自分が何をしているかをよく理解していると思っていましたが、何かをうまく処理しているように感じるときはいつでも、私は間違っていることが証明されています:)
問題のコードはこれです
私の混乱はnew Intent()
andstartActivity
メソッドにあります。
私は、匿名クラス内で作業している限り、次のView.OnClickListener
ようなことをしなければならないと
想定していましたMainActivity.this.startActivity(intent);
匿名クラスの中にいないときは、簡単に行うことができます
new Intent(this,SecondActivity.class);
メソッドを呼び出すことができるのに、インテント パラメータでstartActivity();
使用できない理由を誰かが説明できますか?this