Hey!
Ich möchte in meinem Code die Person test initialisieren mit den Attributen , die ich vorher deklariert habe.
Unter den Attributen ist ein von mir erstelltes Objekt Date, was ich dem Konstruktor übergeben möchte.
Nun nimmt er diesen nicht an.
Wenn ich ein Date in der Main-Methode von Person erstelle und dort hineingebe, funktionierts. Aber wenn ich nur die Werte eines Date's einfüge in den Konstruktor, übernimmt er dies nicht bzw. zeigt eine Fehlermeldung, dass der Konstruktor undefiniert ist.
Aber wurde nicht dadurch, dass ich für mein Date die Int-Werte(Tag, Monat, Jahr) gesettet habe, der Konstruktor definiert?
Könnt ihr mir sagen, woran es liegt?
Danke!
Ich möchte in meinem Code die Person test initialisieren mit den Attributen , die ich vorher deklariert habe.
Unter den Attributen ist ein von mir erstelltes Objekt Date, was ich dem Konstruktor übergeben möchte.
Nun nimmt er diesen nicht an.
Wenn ich ein Date in der Main-Methode von Person erstelle und dort hineingebe, funktionierts. Aber wenn ich nur die Werte eines Date's einfüge in den Konstruktor, übernimmt er dies nicht bzw. zeigt eine Fehlermeldung, dass der Konstruktor undefiniert ist.
Aber wurde nicht dadurch, dass ich für mein Date die Int-Werte(Tag, Monat, Jahr) gesettet habe, der Konstruktor definiert?
Könnt ihr mir sagen, woran es liegt?
Danke!
Java:
package x;
public class Person {
public static void main(String[] args) {
Person test = new Person("", "becker", 19,12,1996); // Diese Zeile ist gemeint.
test.asString();
test.getAge();
}
private String Vorname;
private String Nachname;
private Date Date;
private Date heute;
public Person(String Vorname, String Nachname, Date Date) {
this.Vorname = Vorname;
this.Nachname = Nachname;
this.Date = Date;
}
//public void
public void asString() {
String personn = "Vorname = " + Vorname + ". Nachname = " + Nachname +
".Geburtsdatum = " + Date;
System.out.println(personn);
}
public void getAge() {
heute = new Date(17,12,2019);
int alter = (heute.getJahr() - Date.getJahr());
System.out.println(alter);
}
}
/////////////////////////////////////////////////////////////
package x;
public class Date {
public static void main(String[] args) {
Date datum = new Date(8,11,1991);
System.out.println("Das Datum lautet: " + datum.asString() + " und die "
+ "Differenz zu heute lautet: " + datum.getYearDiff(datum) + " Jahre.");
}
private int Tag;
private int Monat;
private int Jahr;
public Date(int Tag, int Monat, int Jahr) {
this.Tag = Tag;
this.Monat = Monat;
this.Jahr = Jahr;
}
public int getTag() {
return Tag;
}
public int getMonat() {
return Monat;
}
public int getJahr() {
return Jahr;
}
public String asString() {
String Datum = Tag + "." + Monat + "." + Jahr;
return Datum;
}
public int getYearDiff(Date datum) {
Date heute = new Date(17,12,2019);
int differenz = (heute.getJahr() - datum.getJahr());
return differenz;
}
}