Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Die Aufgabe ist folgende: Ich will eine Klasse Person erstellen mit den Attributen Name und Alter;
Danach will ich zwei Subklassen Mitarbeiter und Student erstellen, die einmal um das Attribut Abteilung, einmal um das Attribut Matrikelnummer erweitert werden;
Danach soll man eingeben, wie viel personen man eingeben will und ein x eingeben, falls es sich um einen Mitabeiter handelt
Nachdem man dann die nötigen Informationen wie name, alter und abteilung/matrikelnummer eingegebn hat, soll das in einem Array gespeichert und ausgegeben werden!
Ich bekomm jedoch um die 30 Fehlermeldungen, fast immer mit error:class, interface or enum expected, kann jemand helfen?
Ihr vergesst immer, was für einen Anfänger ihr hier sitzen habt
Also ich mach ne Javadatei mit der Klasse Person, eine mit der Klasse Mitarbeiter und einer mit der Klasse Student und wohin kommt dann meine Main-Methode?
Und wie bekomme ich es hin, dass die main-Methode dann auch auf andere Javafiles zugreifen kann?
Wohin du willst. Kannst dir eine Klasse [c]TestPersonenVererbung[/c] oder was auch immer schreiben. Oder aber auch die [c]main()[/c] in eine der 3 Klassen schieben.
Der Compiler muss jeweils die Abhängigkeiten kennen. Entweder funktioniert es ganz normal per [c]javac *.java[/c], oder du musst noch [c].[/c] in den Classpath aufnehmen ([c].[/c] = current dir), also [c]-cp=.[/c]. Kann dir sicherlich jemand beantworten, welcher öfters als ich [c]java[/c] und [c]javac[/c] verwendet
Auch fürs Starten des Programmes ist es danach nur nötig, dass die Dateien im gleichen Ordner sitzen (da sie im gleichen - default - Package liegen werden*).
Okay, danke für die sehr hilfreiche Antwort, hab das auch so verstanden...
das javac *.java heißt ja nichts anderes als alle Javadateien in diesem Ornder compilieren; Kommt dann eigentlich eine .class-Datei heraus oder mehrere?
Hab auch gerade in der Musterlösung geschaut, da wird nur die Person als public definiert und Mitarbeiter/Student nur als class-Datei, habe das jetzt auch geändert und bekomme folgenden Quelltext, der aber immer noch 30 Fehler aufweißt, was ist jetzt noch falsch?
Ach, eine Frage noch: Ich habe bei int-Zahlen den Befehl int a=EingabeInt() haben, er wollte letztendlich aber int a=Integer.parseInt(eingabe()) haben, kann mir jemand sagen, wann man was benutzt?
Java ist streng typisiert. Du hast eine Variable vom Typ int und willst Ihr den Rückgabewert einer Methode eingabe() zuweisen, die Strings zurück liefert. Das geht bei Java nicht.
Was aber geht ist, wenn der String nur aus Zeichen besteht, die man int-Wert interpretieren kann, das Ergebnis der Interpretation zu erhalten. Einen Wert aus einem String lesen heißt "parsen". Du willst einen int haben, also Integer.parseInt.
Das geht natürlich nur bei Strings, die auch als int interpretierbar sind. Dazu einige Beispiele:
Java:
// Kann als int-Wert interpretiert werden, alles ok.
int a = Integer.parseInt("3");
// "3.0" ist zwar eine Zahl, aber kein int. Geht also nicht
// Könnte aber als Fließkommazahl interpretiert werden.
// Hierfür siehe: Float.parseFloat und Double.parseDouble
int b = Integer.parseInt("3.0");
// "Hallo" ist überhaupt keine Zahl, geht also auch nicht
int c = Integer.parseInt("Hallo");