Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » formale Sprachen » Bei Java Konstruktor in einem andern Konstruktor verwenden » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 10 Beiträge
Lycaner

Nochmal Danke
eulerscheZahl

break bricht die Schleife komplett ab, continue den aktuellen Schleifendurchlauf.
Dein break ist nicht von if(...) abhängig, wird also auf jeden Fall ausgeführt. Daher endet die Schleife nach dem ersten Durchgang.
Je nachdem, was du vorhast, empfehle ich dir else break oder das break einfach ganz wegzulassen.
Lycaner

Ok jetzt habe ich doch noch eine kleine Frage.
Ich wollte das gesamte Datenfeld ausgeben und habe einen kleine Schleife geschrieben.
Das
for(int i=0;i<10;i++){
if(Datenfeld[i].gebTag>0){
Datenfeld[i].zeigeSpielerdaten();
}
break;
}
Wieso gibt er mir nur den erst Datenfeld aus und bricht die Schleife ab. Ich wollte, dass die Schleife abgebrochen wird, wenn bei Geburtstagen nichts steht.
Gibt es eine andere Möglichkeit zu prüfen, ob in der Schleife etwas stehet oder nicht?
Lycaner

Es klappt endlich alles, vielen Dank.
Schöne Ostertage noch eulerscheZah : )
eulerscheZahl

Versuche mal per.zeigeDaten();
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
package meinPaket;
public class main {
	public static void main(String[] args) {
		persoenlicherDatensatz[] Datenfeld = new persoenlicherDatensatz[10];
		Datenfeld[0] = new persoenlicherDatensatz(new persoenlicheDaten("Hans", "Meier"), 1, 1, 1970);
		Datenfeld[0].zeigeDatensatz();
	}

}


package meinPaket;
public class persoenlicheDaten {
    public String vorname, nachname;
    public persoenlicheDaten(String vorname, String nachname)
    {
        this.vorname = vorname;
        this.nachname = nachname;
    }
    
    public void zeigeDaten(){
    	System.out.println("Vorname und Nachname: "+vorname+" "+nachname);	
    }
}


package meinPaket;
public class persoenlicherDatensatz {
    public persoenlicheDaten per;
    public int gebTag, gebMonat, gebJahr;
    public persoenlicherDatensatz(persoenlicheDaten per, int gebTag, int gebMonat, int gebJahr)
    {
        this.per = per;
        this.gebTag = gebTag;
        this.gebMonat = gebMonat;
        this.gebJahr = gebJahr;
    }

    public persoenlicherDatensatz(String vorname, String nachname, int gebTag, int gebMonat, int gebJahr)
    {
        this.per = new persoenlicheDaten(vorname,nachname);
        this.gebTag = gebTag;
        this.gebMonat = gebMonat;
        this.gebJahr = gebJahr;
    }
    
    public void zeigeDatensatz(){
    	per.zeigeDaten();
    }
}
Lycaner

Aufgabe 2c.
Die Methode zeigeSpielerdaten() soll alle persönlichen und Spielerdaten
anzeigen. Zur Anzeige der persönlichen Daten soll die Methode zeigeDaten
der Klasse PersoenlicheDaten aufgerufen werden.

Die Methode zeigeDaten habe ich programmiert und dann wollte ich diese Methode in der Methode PersönlicheDaten abrufen aber es kommt immer ein Fehler vor, obwohl ich den abruf einige Programm im Internet gesehen habe(

public void zeigeDaten() {
System.out.println("Vorname und Nachname: "+vorname+" "+nachname);
}


public void zeigeSpielerdaten() {
System.out.println(zeigeDate per()); diese Zeile wird rot unterstrichen(
System.out.println("");
}

Die zweite Methode steht in der anderen Klasse als die erste Methode.
Lycaner

Aufgabe 2b.
Entwerfen Sie einen geeigneten Konstruktor, der alle persönlichen Daten und Datensatz eines Fussbalspielers als Parameter erhält.

Unter den persönlichen Daten habe ich 7 Attribute und im dem Datensatz kommen 6 weiter Attribute hinzu.
Deswegen wollte ich den ersten Konstruktor verwenden, weil dann das Programm viel kürzer wird.
eulerscheZahl

meinst du so?
Datenfeld[0] = new persoenlicherDatensatz(new persoenlicheDaten("Hans", "Meier"), 1, 1, 1970);

falls nein, bitte ich um den genauen Wortlaut der Aufgabe, weil ich immer noch nicht weiß, was du vorhast.
Lycaner

Erst mal, danke für deine Mühe.

Ich habe genauso abgetippt und das hat nur funktioniert, als ich den zweiten Konstruktor eingefügt habe.

Leider steht in der Aufgabenstellung, dass man den ersten Konstruktor verwenden soll. Und wenn ich das mache, kann ich kein Array erzeugen( zu minderst da taucht der erster Fehler auf(
eulerscheZahl

Eine Ferndiagnose ist schwer.
Hast du
- Die Namen der Klassen auch nicht vertauscht
- Das richtige Package zugewiesen
- Für jede Klasse ein eigenes .java-File erstellt

Hier noch ein Screenshot, wie es bei mir aussieht:

eulerscheZahl hat dieses Bild (verkleinerte Version) angehängt:
java_Konstruktor.png

Es sind weitere Beiträge zu diesem Thema vorhanden. Klicken Sie hier, um sich alle Beiträge anzusehen.