Objepte/Clone und Referenzen

Von: , Frage gestellt am Fr, 23. Apr 2004

Hi,

Objekt = Objekte[index];

Wie gehe ich sicher, daß Objekt das selbe Object ist wie Objekte[index] und kein Clone davon?
Ich will es über beide Referenzen gleich ansprechen können und wenn ich mit der einen was ändere, will ich die Änderung mmit der anderen Abrufen können.

cu Desian

6 Antworten zu dieser Frage

  1. Antwort von nach 42 Minuten 0 hilfreich
    Re: Objepte/Clone und Referenzen

    Du kannst die Objekte einfach mit == vergleichen. Ein clone liefert hier false.

    /Dirk [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

    • Antwort von nach 50 Minuten 0 hilfreich
      Re^2: Objepte/Clone und Referenzen

      Danke für den Hinweis aber ich will einen nichtClone machen und nicht nur prüfen ob es ein Clone ist.

      cu Desian

      • Antwort von nach 59 Minuten 1 hilfreich
        Re^3: Objepte/Clone und Referenzen

        Danke für den Hinweis aber ich will einen nichtClone machen
        und nicht nur prüfen ob es ein Clone ist.

        cu Desian
        == liefert true, wenn das selbe Objekt referenziert wird. Das heisst auch bei nicht clonen wird hier false zurück geliefert.

        /Dirk

        • Antwort von nach einer Stunde 1 hilfreich
          Re^4: Objepte/Clone und Referenzen

          K.
          Will eigendlich nur einen PointerAufMeinObjektDasIchInEinemArrayHabe..

          Wollte nur wissen ob
          MyClass myObject = arrayVonMyClassObjekte[bestimmterIndex];
          myOject zu einem Pointer macht.

          Anders:
          Macht er da CallByReferences?
          Wenn nein, wie macht man das?
          Wenn ja, wie verhindert man das?

          cu Desian

          • Antwort von nach einer Stunde 2 hilfreich
            Re^5: Objekte/Clone und Referenzen

            Hi, Wollte nur wissen ob
            MyClass myObject = arrayVonMyClassObjekte[bestimmterIndex];
            myOject zu einem Pointer macht.
            ja. Letztlich sind alle Objektinstanzvariablen nur Zeiger auf die Objekte. In Deinem Fall hast Du also einen Zeiger auf das Objekt.
            Anders:
            Macht er da CallByReferences?
            Wenn nein, wie macht man das?
            Wenn ja, wie verhindert man das?

            cu Desian
            Call by Reference ist was anderes. So wird die Parameterübergabe bei Methoden genannt, wenn ein Zeiger als Parameterwert übergeben wird.

            Wenn Du Call by reference verhindern willst, dann übergebe einen 'echten' Clone.

            Gruss,

            Herb

  2. Antwort von nach 8 Stunden 0 hilfreich
    Re: Objepte/Clone und Referenzen

    Objekt = Objekte[index];
    Wie gehe ich sicher, daß Objekt das selbe Object ist wie
    Objekte[index] und kein Clone davon?
    Ich will es über beide Referenzen gleich ansprechen können und
    wenn ich mit der einen was ändere, will ich die Änderung mmit
    der anderen Abrufen können.
    Da brauchst du gar nichts machen, das ist von selbst eine Referenz. Was du halt nicht machen solltest ist einem der beiden etwas neues zuweisen also z.b. Objekt = new Objekt(); dann geht deine Referenz verloren

    Grüße
    Bruno

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!