私は現在大学でJavaクラスを取っています。これは私の最初のプログラミングクラスであり、私は理解できないものを見つけました。私が学んだように、変数を比較するには2つの方法があります。最初に使用している==
、!=
、<
、>
、=<
、などなどint型、ダブル、などのプリミティブの変数の>=
兆し。 2番目の方法は参照型に.equals()メソッドを使用することです。誰かが私にjavaの.getClass()メソッドを説明できますか?
私は.getClass()
メソッドを使用すると、2つのクラスを.equals()メソッドと==
/!=
メソッドで比較できます。 ==
/!=
符号を使用できるので、オブジェクトのクラスを返す.getClass()
メソッドはプリミティブ型を返す必要があると思います。しかし、私はJava APIのこのメソッドについて知っている唯一のものは、オブジェクトのクラスを返すことです。返される変数の型はわかりません。このメソッドはどのくらい正確に機能しますか?それは何を返すのですか?私は先生に尋ねようとしたが、彼女は知らなかった。ありがとうございました!
'ClassLoader'について忘れないでください、hotzstの答えを見てください。 – vektor
私はちょうどあなたの答えに感謝したいと思います。私が正しく理解すると、各クラスはClassクラスの一意のインスタンス(オブジェクト)を作成します。 getClass()メソッドを使用すると、そのクラスインスタンスへの参照が返されます。このように、!=と==を使用する場合、2つの異なるクラスを比較して、メモリ内の同じ参照を指しているかどうかを確認します。これは正しいですか? – John