2016-03-20 22 views
-2

"ノーマル"クラス(非インターフェイス)に基づくインターフェイスと匿名クラスに基づく匿名クラスの違いは何ですか?インターフェイスとクラスに基づく匿名クラスの相違点

+0

あなたはなぜ質問していますか(意味では、私はここで特別な違いはないと思います)? – GhostCat

+0

私の友人は就職の準備をしていて、いくつか質問があります(サンプル)。そして私はうんざりにいくつかの違いがあるのだろうかと思う。誰かがそれを知っている私はいつか同じ質問をするだろう=) – kurumkan

答えて

2

インターフェイスの場合、匿名クラスはすべてのメソッドを実装する必要があります。クラスの場合、必要はありませんが、メソッドをオーバーライドできます。どのメソッドもオーバーライドしていない場合は、通常のインスタンスを作成してください。これは、最初のケースではインターフェースを実装し、2番目のケースではクラスを拡張するのとまったく同じです。

1

インターフェイス(implements)を実装し、基本クラス(extends)をサブクラス化する新しいクラスとまったく同じ違いです。

新しいクラスが匿名であるという事実は、何の違いもなく、JVMの別のクラスです。

残りはコンパイラの砂糖です。