I
Ich
Gast
Hey! Ich bin im ersten Semester der OOP und habe eine Frage,die sich auf die Verwendung von Konstruktoren bezieht.
Ich habe eine Klasse Auto und eine Main.
Nachdem ich das Aufgabenblatt soweit abgearbeitet habe und versch. Objekte (auto) erstellt habe, soll ich fuer die Klasse Auto weitere Attribute anlegen. Marke, Modell und ob es jeweils eine Klimaanlage hat. Jetzt habe ich mir in der Klasse Auto einen Konstruktor ueberlegt, der fuer alle Attribute bei der Objekterzeugung Werte entgegennimmt. Das habe ich auch getan, nur jetzt zeigt er mir in meiner Main bei Auto auto2 = new Auto (); "the constructor Auto() is undefined" an. Das war, bevor ich meinen Konstruktor geschrieben habe, der alle Attribute entgegennimmt allerdings noch nicht so. Woran liegt das und wie kann ich es aendern? Danke fuer eure Tipps!
Ich habe eine Klasse Auto und eine Main.
Nachdem ich das Aufgabenblatt soweit abgearbeitet habe und versch. Objekte (auto) erstellt habe, soll ich fuer die Klasse Auto weitere Attribute anlegen. Marke, Modell und ob es jeweils eine Klimaanlage hat. Jetzt habe ich mir in der Klasse Auto einen Konstruktor ueberlegt, der fuer alle Attribute bei der Objekterzeugung Werte entgegennimmt. Das habe ich auch getan, nur jetzt zeigt er mir in meiner Main bei Auto auto2 = new Auto (); "the constructor Auto() is undefined" an. Das war, bevor ich meinen Konstruktor geschrieben habe, der alle Attribute entgegennimmt allerdings noch nicht so. Woran liegt das und wie kann ich es aendern? Danke fuer eure Tipps!
Java:
public class Main {
public static void main(String[] args) {
Auto a1 = new Auto (); //neues Objekt erzeugt
a1.Baujahr = 1963;
Auto a2 = new Auto (); //neues Objekt erzeugt
a2.Baujahr = 2010;
a2=a1;
//auto1 wird das Baujahr von auto2 zugewiesen
System.out.println("Das Baujahr von dem ersten Auto lautet: " + a1.Baujahr);
System.out.println();
System.out.println("Das Baujahr von dem zweiten Auto lautet: " + a2.Baujahr);
System.out.println();
// auto1=1963, auto2=1963
//a) + c)
Auto auto1 = new Auto ();
auto1.gibBaujahr = 2010;
Auto auto2 = new Auto ();
auto2.gibBaujahr = 2011;
System.out.println("Ausgabe der Methode gibBaujahr:" + " " + auto1.gibBaujahr + " " + "und" + " " + auto2.gibBaujahr);
System.out.println();
auto1 = null;
// null ist eine leere Referenz, die auf nichts zeigt
//Ausgabe der statischen Methode
System.out.println("Statische Methode,Referenzuebergabe:" + " " + Auto.getgibBaujahrVonAuto());
Auto auto3 = new Auto();
auto3.Baujahr = 2015;
auto3.Marke = "Ford";
auto3.Modell = "Focus";
auto3.Klimaanlage = false;
}
}
public class Auto {
public Integer Baujahr;
//c)
public Integer gibBaujahr;
public static int gibBaujahrVonAuto = 2055;
public static int getgibBaujahrVonAuto () {
return gibBaujahrVonAuto;
}
public String Marke;
public String Modell;
public boolean Klimaanlage;
public Auto ( int bauj, int gibBJ, String automarke, String automodell, boolean klimaanl) {
Baujahr = bauj;
gibBaujahr = gibBJ;
Marke = automarke;
Modell = automodell;
Klimaanlage = klimaanl;
}
}