2012-01-05 11 views
1

javaについては、私がインターフェースであるとします.Iclassとは何ですか?それは何のために使うのですか?JavaのInterface.classは何を意味していますか?

+0

クラスごとに、クラスのプロパティのいくつかを照会したり、クラスの新しいインスタンスを作成したりすることができるオブジェクトがあります。 ' .class'は、そのオブジェクトへの参照を取得する方法です。 (そしてインターフェイスはクラスの特別なタイプです) –

答えて

2

インターフェイスの「class」メンバは、リフレクション(ClassLoaderとクラスの名前を使用)を介してオブジェクトを作成してメソッドをチェックし、指定されたインターフェイスから新しいクラスがAssignableかどうかを確認するときに最も便利です。

4

あなたが書くすべてのクラスまたはインターフェイスは、Javaでの実行時にjava.lang.Classオブジェクトに関連付けられています。同じクラスのすべてのインスタンスが同じClassオブジェクトを共有し、対応するオブジェクトのCLassName/InterfaceName.classまたはobj.getClass()メソッドを呼び出すことによってClassオブジェクトを取得できます。詳細についてはWhat is the use of class “java.lang.Class” ?の記事をご覧ください。

2

インターフェイスのClassインスタンスです(I)。それを使うと、オブジェクトがインターフェイスを実装かどうかをチェックし、インターフェイスのメソッドやフィールドを見つけることができる、など

Type.classClass.forName()経由でオブジェクトClassオブジェクトを取得するためのシンタックスシュガーです。 「クラス」は、インタフェースに適用されたときに適切ではないように見えますが、同じ方法で動作し、同じ情報の多くを提供します。しかし、どのコンストラクタにも反映することはできません。

+0

本当の助けでした... – Maxi

関連する問題