EqualTest.java



/** オブジェクトの比較のテスト */
import java.awt.Color;
public class EqualTest {

  /** プログラムの処理の開始 */
    public static void main( String[] argv ) {

        Color c1 = new Color( 255, 0, 0 );
        Color c2 = new Color( 1.0f, 0.0f, 0.0f );
        Color c3 = Color.red;
        Color c4 = c1;

        System.out.println( "1回目:" );
        compare( c1, c2 );
        compare( c1, c3 );
        compare( c1, c4 );

        c2 = new Color( 254, 0, 0 );
        c3 = c4;

        System.out.println( "2回目:" );
        compare( c1, c2 );
        compare( c1, c3 );
        compare( c1, c4 );
    }

  /** Colorオブジェクトの比較を行う */
    public static void compare( Color c1, Color c2 ) {
        if( c1 == c2 ) {
            System.out.println( c1 + "と" + c2
                             + "は同一のオブジェクトです" );
        }
        else if( c1.equals( c2 ) ) {
            System.out.println( c1 + "と" + c2
               + "は同じ内容を持つ異なるオブジェクトです" );
        }
        else {
            System.out.println( c1 + "と" + c2
                     + "はまったく異なるオブジェクトです" );
        }
    }
}