ホームページ  >  記事  >  Java  >  Java でオブジェクトを渡したり返したりするサンプルコード

Java でオブジェクトを渡したり返したりするサンプルコード

零下一度
零下一度オリジナル
2018-05-24 13:58:561505ブラウズ

1. Clone() メソッドはオブジェクトを生成し、生成されたオブジェクトの値はメソッドの使用後に割り当てる必要があります。

Vector v2 = (Vector)v.clone();

2. Clone() メソッドは、オブジェクト内の保護された型のメソッドです。作成するクラスで Clone() メソッドを使用する必要がある場合は、それを自分で書き直して、Cloneable インターフェイスを継承する必要があります。

package tweleve;import java.util.*;class MyObject implements Cloneable {int i;

    MyObject(int ii) {
        i = ii;
    }public Object clone() {
        Object object = null;try {
            object = super.clone();
        } catch (CloneNotSupportedException e) {
            System.out.println("MyObject can't clone");
        }return object;
    }public String toString() {return Integer.toString(i);
    }
}public class LocalCopy {static MyObject g(MyObject v) {
        v.i++;return v;
    }static MyObject f(MyObject v) {
        v = (MyObject) v.clone();
        v.i++;return v;
    }public static void main(String[] args) {
        MyObject aMyObject = new MyObject(11);
        MyObject bMyObject = g(aMyObject);if (aMyObject == bMyObject)
            System.out.println("a==b");elseSystem.out.println("a!=b");
        System.out.println("a=" + aMyObject);
        System.out.println("b=" + bMyObject);
        MyObject cMyObject = new MyObject(31);
        MyObject dMyObject = f(cMyObject);if (cMyObject == dMyObject)
            System.out.println("c==d");elseSystem.out.println("c!=d");
        System.out.println("c=" + cMyObject);
        System.out.println("d=" + dMyObject);

    }

}

3. クラスを複製する場合は、次の手順に従う必要があります: (1) Cloneable インターフェイスを実装します

(2) Clone() メソッドをオーバーライドします

.cloね()

ing メソッドは実際には新しい String クラスを作成して返しますが、+ と += を含めて元の String クラスは変更されていないため、文字列を操作する場合は StringBuffer の方が効率的です。

りー

以上がJava でオブジェクトを渡したり返したりするサンプルコードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。