我首先向您展示代码。首先,我将展示我的主要课程。我尚未完成我的程序,我只想测试我的属性中保存的内容。它保存了" null"。
public class Starter {
public static void main(String[] args) throws Exception {
Transaktion transaktion = new Transaktion();
System.out.println(transaktion.getZeitStempel());
System.out.println(LocalDateTime.now());
}// end of main
}// end of class
那是我的transaktion班。此属性" Zeitstempel给我无效"。
public class Transaktion {
/**
* Deklaration von Attributen
*/
private LocalDateTime zeitStempel;
private Transaktionsart tart;
private String beschreibungstext;
private double betrag;
public Transaktion(LocalDateTime zeitStempel, Transaktionsart tart, String beschreibungstext, double betrag) {
super();
this.zeitStempel = zeitStempel;
this.tart = tart;
this.beschreibungstext = beschreibungstext;
this.betrag = betrag;
}
public Transaktion() {
// TODO Auto-generated constructor stub
}
public LocalDateTime getZeitStempel() {
return zeitStempel;
}
public void setZeitStempel(LocalDateTime zeitStempel) {
this.zeitStempel = zeitStempel;
}
上一类是具有初始化属性" Zeitstempel"的METHODE的MENUE。
public void transaktionslisteEinlesen(){
String beschreibungstext = MeineEingabe.erfasseString("Beschreibungstext: ");
double betrag = MeineEingabe.erfasseDouble("Betrag:");
LocalDateTime localdatetime = LocalDateTime.now();
Konto konto = new Konto();
Transaktion transaktion = new Transaktion(localdatetime, null, beschreibungstext, betrag);
konto.addTransaktion(transaktion);
}
忽略针对其他属性的konstructor null的事实。
我希望您能帮助我尝试了很长时间的管理零值,但我讨厌它。
最好的问候Greentea
您正在使用空构造函数,因此永远不要将时间戳设置为任何内容。
您要么需要调用setZeitStempel
或使用参数使用构造函数。
对于您正在使用正确构造函数的einlesen
方法,但是您实际上从未沿我看到的范围。
您可以做这样的事情:
public Transaktion transaktionEinlesen(){
String beschreibungstext = MeineEingabe.erfasseString("Beschreibungstext: ");
double betrag = MeineEingabe.erfasseDouble("Betrag:");
LocalDateTime localdatetime = LocalDateTime.now();
return new Transaktion(localdatetime, null, beschreibungstext, betrag);
}
然后在main
中:
public static void main(String[] args) throws Exception {
Transaktion transaktion = transaktionEinlesen()
Konto k = new Konto();
k.addTransaktion(transaktion);
System.out.println(transaktion.getZeitStempel());
System.out.println(LocalDateTime.now());
}
PS :您不应用德语编写代码。如果您的目标是从事编程职业,则需要习惯英语,因为这是标准。