Hallo :wink:
Habe schon gestern Mühe gehabt mit meinen ersten Java Schritten und wollte schon Fragen stellen, habe es dann aber doch allein geschafft
Leider bin ich jetzt aber dann doch gezwungen eine Frage zu stellen, nachdem Google, die Boardsuche und mein 1000 Seiten Java-Buch mir meine Frage nicht beantworten konnten
Vermutlich liegts auch noch etwas am Verständnis :autsch:
Zur Frage:
Ich möchte gerne Daten aus einer erzeugten Klasse lesen und zwar in einer Methode die static ist:
--> Siehe Code
Das Problem hab ich mit einem X markiert.
Ich würde halt gern die in der Klasse Berechnung erzeugten Daten (hier:cDays1) auf dem Bildschirm ausgeben:
Würde mich über eure Hilfe freuen ???:L
Grüße Lok
Habe schon gestern Mühe gehabt mit meinen ersten Java Schritten und wollte schon Fragen stellen, habe es dann aber doch allein geschafft
Leider bin ich jetzt aber dann doch gezwungen eine Frage zu stellen, nachdem Google, die Boardsuche und mein 1000 Seiten Java-Buch mir meine Frage nicht beantworten konnten
Vermutlich liegts auch noch etwas am Verständnis :autsch:
Zur Frage:
Ich möchte gerne Daten aus einer erzeugten Klasse lesen und zwar in einer Methode die static ist:
--> Siehe Code
Code:
import java.io.*;
import java.util.StringTokenizer;
class Datum{
// bla bla
}
class Berechnung {
int bdatt1, bdatm1, bdaty1, bdatt2, bdatm2, bdaty2, cDays1, cDays2;
public Berechnung(int datt1, int datm1, int daty1, int datt2, int datm2, int daty2) {
setDats(datt1, datm1, daty1, datt2, datm2, daty2);
countDays(bdatm1, bdaty1, bdatm2, bdaty2);
}
public void setDats(int dt1, int dm1, int dy1, int dt2, int dm2, int dy2) {
this.bdatt1 = dt1;
this.bdatm1 = dm1;
this.bdaty1 = dy1;
this.bdatt2 = dt2;
this.bdatm2 = dm2;
this.bdaty2 = dy2;
}
public void countDays(int month1, int year1, int month2, int year2) {
int count1 = 0, count2 = 0;
switch (month1) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
count1 = 31;
break;
case 4:
case 6:
case 9:
case 11:
count1 = 30;
break;
case 2:
if (year1 % 4 == 0)
count1 = 29;
else
count1 = 28;
if ((year1 % 100 == 0) & (year1 % 400 != 0))
count1 = 28;
}
this.cDays1 = count1;
switch (month2) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
count2 = 31;
break;
case 4:
case 6:
case 9:
case 11:
count2 = 30;
break;
case 2:
if (year2 % 4 == 0)
count2 = 29;
else
count2 = 28;
if ((year2 % 100 == 0) & (year2 % 400 != 0))
count2 = 28;
}
this.cDays2 = count2;
}
}
public class Berechnung2{
public static void main(String[] args) throws IOException {
erfasseDaten();
}
public static void erfasseDaten() throws IOException {
InputStreamReader eingabeStrom = new InputStreamReader(System.in);
BufferedReader tastatur = new BufferedReader(eingabeStrom);
System.out.print("Geben Sie ein gueltiges Datum von 1901-2100 ein (dd.mm.yyyy): ");
String eingabeDatum = tastatur.readLine();
Datum dat1 = new Datum(eingabeDatum);
System.out.print("Geben Sie ein zweites gueltiges Datum von 1901-2100 ein (dd.mm.yyyy): ");
String eingabeDatum2 = tastatur.readLine();
Datum dat2 = new Datum(eingabeDatum2);
X Berechnung ber = new Berechnung(dat1.getDatt(), dat1.getDatm(), dat1.getDaty(), dat2.getDatt(), dat2.getDatm(), dat2.getDaty());
ausgabeBasisdaten(dat1.getDatum(), dat2.getDatum(), dat1.getDatt(), dat1.getDatm(), dat1.getDaty(), dat2.getDatt(), dat2.getDatm(), dat2.getDaty());
}
public static void ausgabeBasisdaten(String adat1, String adat2, int datt1, int datm1, int daty1, int datt2, int datm2, int daty2) {
System.out.println("***************************");
System.out.println("Datum1 lautet: " +adat1);
System.out.println("Tag Datum1: " + datt1);
System.out.println("Monat Datum1: " + datm1);
System.out.println("Jahr Datum1: " + daty1);
System.out.println("***************************");
System.out.println("Datum2 lautet: " +adat2);
System.out.println("Tag Datum2: " + datt2);
System.out.println("Tag Datum1: " + datm2);
System.out.println("Tag Datum1: " + daty2);
X System.out.println("Tag Datum1: " + ber.cDays1);
System.out.println("***************************");
}
}
Das Problem hab ich mit einem X markiert.
Ich würde halt gern die in der Klasse Berechnung erzeugten Daten (hier:cDays1) auf dem Bildschirm ausgeben:
Würde mich über eure Hilfe freuen ???:L
Grüße Lok