ソースコード にあるように、st01、st02 の初期値を「オカピ」と設定しオブジェクトを作成します。
すると、変数の中身 のように、st01、st02 には、メモリの番地が入ります。そして、初期値の「オカピ」は、メモリ に番地と共に設定されています。
例えば、Java では、st01 の値を出力する場合、メモリの番地から実際の値を取得して出力します。これらのオブジェクトを == で比較すると、st01 のメモリの番地(0001) と st02 のメモリの番地(0002) が等しいか判断します。0001、0002 なので、同値でないと判断されます。では、値(オカピ)を比較したい場合はどうすれば良いのでしょうか?
先ほどのプログラムを修正してみましょう。