2016-10-09 11 views
0

インターフェイスを実装するクラスが内部的に定義されていますか(例:A)? Java Documentationのインタフェースページに表示されているメソッドの要約は、実際にはで実装された実装であるの実装で行われていますか?例についてはJavaドキュメントのインタフェースページにメソッド要約があるのはなぜですか?

interface Path { void help();} 
class PathImpl implements Path { 
    String path; 
    PathImpl(String path) { this.path = path; } 
    void help(){ System.out.println("Help");} 
} 

パスインタフェースのドキュメントには、メソッドの概要を持っています。 Pathにすべてのメソッドを実装する隠しクラスPathImplはありますか?メソッドの要約は、実際には私たちから隠されているPathImplで行われたメソッドの実装のオンラインドキュメントに表示されていますか?

答えて

0

これは、そのメソッドのインターフェイスを示しているだけで、すべての実装者クラスに従う必要があります。たとえば、java.util.Listのjavadocを見ると、どのメソッドがどのように使用されているかがわかりますが、実際の実装はArrayListとして各実装者クラスに任せられていませんListのインタフェース

+0

しかし、どのようにリストはメソッドの実装を持っていますか、それはインターフェースですか? –

+0

まさに、ArrayListなどの実装クラスに実装があります。インターフェイスでは、メソッドの定義(名前、シグネチャ、戻り値の型、例外がスローされます)が見つかりますが、実装はうまくいきません。 – chess4ever

+1

@BacterioVevo Java 8では、インターフェースは実装を持つことができます。 –

関連する問題