OOP Schwierigkeiten mit OOP

Trabbelmaker

Aktives Mitglied
Hi,
ich traue mich schon gar nicht hier nachzufragen :/, aber ich habe Schwierigkeiten mit der Objektorientierenden Programmierung. Ich habe schon viele Tutorials im Netz gelesen, dort wird öfters das Beispiel Mensch oder ein Haus genommen, aber irgendwie macht es nicht klick :/
Wo verwendet man Objekte?
Wie verwende ich Objekte richtig?
Vielleicht kann mir einer ein kleines mini Programm schreiben, wo man genau sehen kann, wie und wo man Objekte einsetzt.

//edit:
Ich habe ein bisschen rumprobiert und habe diesen Code geschrieben:
Java:
public class Beispiel {
	public static void main(String[] args) {
		Dackel Waldi = new Dackel();
		Dackel Kenai = new Dackel();
		
		Waldi.bellen();
		Waldi.setAlter(4);
		Waldi.name(Waldi);
		
		Kenai.bellen();
		Kenai.setAlter(7);
	}
}
Java:
public class Dackel {

	public void name(String name) {
	}
	
	public void bellen() {
		
	}

	public void setAlter(int i) {
		System.out.println("ist: " + i + " Jahre alt.");
	}
}

Wie kann ich jetzt machen, dass in der zweiten ".class" Datei ein Text ausgegeben wird, wo der Name des Hundes und sein alter steht. Also so: System.out.println(name + " ist " + alter + " Jahre alt");


Mit freundlichen Grüßen,
Trabbelmaker
 
Zuletzt bearbeitet von einem Moderator:

Trabbelmaker

Aktives Mitglied
Ich habe ein bisschen weiter gearbeitet und bin jetzt wieder ins Stocken geraten. Und zwar weiß ich nicht, wie ich ein String in einer Methode von einer anderen Klasse übergeben kann. So sieht mein derzeitiger Code aus:
Java:
public class Beispiel {
	public static void main(String[] args) {
		Dackel Waldi = new Dackel();
		Dackel Kenai = new Dackel();
		
		Waldi.bellen(true);
		Waldi.setAlter(4);
		Waldi.setName("Waldi");
		
		//Kenai.bellen(false);
		Kenai.setAlter(7);
		
		System.out.println(Waldi.getAlter());
	}
}

Java:
public class Dackel {

	int alter;
	String hundename;
	
	public void setName(String name) {
		this.hundename = name;
	}
	
	public void bellen(boolean a) {
		if (a == true) {
			System.out.println(hundename + " sagt: Wuff Wuff!");
		} else {
			System.out.println("**ruhe**");
		}
	}

	public void setAlter(int i) {
		i++;
		this.alter = i;
	}
	
	public int getAlter() {
		return this.alter;
	}
}
Wenn ich die Klasse Beispiel ausführe kommt das:
Code:
null sagt: Wuff Wuff!
5
 
Zuletzt bearbeitet von einem Moderator:

Gucky

Top Contributor
Du rufst zuerst Waldi.bellen(true) auf, wodurch System.out.println(hundename + " sagt: Wuff Wuff!"); ausgeführt wird. Da hast du aber setName noch nicht ausgeführt, weshalb name immer noch null ist. Es ist besser, wenn du Dinge, wie Name, Alter usw. im Konstruktor definierst.
 

Neue Themen


Oben