JavaのgetClassメソッドは何をするのですか。
Java の getClass() メソッドは、オブジェクトのクラスを取得するために使用されます。 Object クラスのメソッドであるため、ほぼすべての Java オブジェクトでこのメソッドを呼び出してクラスを取得できます。
getClass() メソッドは、そのメソッドを呼び出したオブジェクトの実行時クラスを表す Class オブジェクトを返します。この Class オブジェクトから、クラス名、スーパークラス、インターフェース、フィールド、メソッドなどの情報を取得できます。getClass() メソッドは、以下のような多くの場面で役立ちます。
- クラス名は、getClass().getName()メソッドを呼び出すことで取得でき、デバッグやログ出力などで利用されます。
- オブジェクト型の検査:getClass()メソッドを使用してオブジェクトの型を検査できます。たとえば、instanceof演算子による型検査を行う前に、getClass()メソッドでオブジェクトのクラスを取得できます。
- 実行時に、クラスオブジェクトを利用して、コンパイル時にオブジェクト型を決定するのではなく、動的にオブジェクトを生成する動的オブジェクト作成:反射メカニズム
注意点として、getClass()メソッドは実行時の型を返し、コンパイル時の型ではありません。つまり、オブジェクトがサブクラスによって作成された場合、getClass()メソッドは親クラスのClassオブジェクトではなく、サブクラスのClassオブジェクトを返します。