kostenloser Webspace werbefrei: lima-city


Objekt in Objekt

lima-cityForumProgrammiersprachenJava

  1. Autor dieses Themas

    digitales

    digitales hat kostenlosen Webspace.

    Wie schaffe ich es, dass ein objekt ein neues Objekt erstellt, welches ein weitere Aufgabe auslöst.
    Beispiel:
    hund.bellen().gassigehen()

    Dabei ist der Hund eine eigene klasse mit der method "bellen" darauf hin soll das Objekt Hund den Text "wuff" ausgeben und das neue Objekt "Hundehalter" erzeugen, wobei die method "gassigehen" in der klasse "Hundehalter" steht.

    MFG Digitales
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    class Hund {
    	public Hundehalter bellen() {
    		System.out.println("wuff");
    		return new Hundehalter();
    	}
    }
    class Hundehalter {
    	public void gassigehen() {
    		System.out.println("...");
    	}
    }
    War das so gemeint?

    Beitrag zuletzt geändert: 24.4.2012 9:36:09 von hackyourlife
  4. g****e

    Ich bin kein Javacrack, aber du müsstest in der Methode bellen() als return die Instanz vom Hundhalter geben. Also sowas in der art:

    public Hundehalter bellen() {
        Hundehalter halter = new Hundehalter();
        System.out.println("Wuff");
        return halter;
    }


    Dann solltest du die Methode des Hundehalters nutzen können. Ich weiß aber nicht sicher, ob Java sowas überhaupt unterstützt. Andernfalls musst du es in 2 Zeilen lösen:
    Hundehalter halter = Hund.bellen();
    halter.gassigehen();

    Würde vllt auch die Wartbarkeit des Codes erhöhen ;-)

    Liebe Grüße
  5. Autor dieses Themas

    digitales

    digitales hat kostenlosen Webspace.

    Vielen Dank hackyourlife es hat einwandfrei funktioniert!!
    Ja ggamee das ist im prinzip das gleiche, nur wollte ich das ganze gerne in eine Zeile schreiben und nicht untereinander.

    DAS HAT MICH ECHT EIN RIESEN STÜCK WEITER GEBRACHT!

    MFG Digitales
  6. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    ggamee schrieb:
    Ich bin kein Javacrack, aber du müsstest in der Methode bellen() als return die Instanz vom Hundhalter geben. Also sowas in der art:

    public Hundehalter bellen() {
        Hundehalter halter = new Hundehalter();
        System.out.println("Wuff");
        return halter;
    }


    Dann solltest du die Methode des Hundehalters nutzen können. Ich weiß aber nicht sicher, ob Java sowas überhaupt unterstützt. Andernfalls musst du es in 2 Zeilen lösen:
    Hundehalter halter = Hund.bellen();
    halter.gassigehen();

    Würde vllt auch die Wartbarkeit des Codes erhöhen ;-)

    Liebe Grüße
    Genau das hab ich schon vorher gepostet...

    Also Code der funktioniert:
    class Hund {
    	public Hundehalter bellen() {
    		System.out.println("wuff");
    		return new Hundehalter();
    	}
    }
    class Hundehalter {
    	public void gassigehen() {
    		System.out.println("...");
    	}
    }
    
    public class Hauptprogramm {
    	public static void main(String[] args) {
    		Hund hund = new Hund();
    		hund.bellen().gassigehen();
    	}
    }
    Wenn du den Code so 1:1 in eine .java-Datei kopierst (Hauptprogramm.java) und übersetzt wird es funktionieren... ;-)
  7. t*****b

    Für alle die es interessiert, zB danach googeln wollen:
    Diese Architektur, die in diesem Thread "Objekt in Objekt" genannt ist, wird "Dereferenzierung" genannt und ist genau das, was hackyourlife und ggamee gemacht haben und zwar, ein Objekt statt eines einfachen Datentypes zurück zu geben.
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!