Verebung
parent
ed75d4a669
commit
46081c17b4
|
@ -10,15 +10,15 @@ public class VerwalteStudent {
|
|||
private ArrayList<Student> allStudents;
|
||||
public VerwalteStudent() {
|
||||
this.view = new Student_login();
|
||||
view.getInsertStudent().addActionListener(e -> login());
|
||||
view.getInsertStudent().addActionListener(e -> insert());
|
||||
view.getLoescheStudent().addActionListener(e -> loeschen());
|
||||
view.getSucheStudent().addActionListener(e -> showUser());
|
||||
view.getUpdateStudent().addActionListener(e -> update());
|
||||
allStudents = new ArrayList<>();
|
||||
}
|
||||
|
||||
|
||||
public void login() {
|
||||
|
||||
public void insert() {
|
||||
String idText = view.getEingabeId().getText();
|
||||
int id = Integer.parseInt(idText);
|
||||
String name = view.getEingabeName().getText();
|
||||
|
@ -32,42 +32,60 @@ public class VerwalteStudent {
|
|||
student = new Student(name, vorname, geschlecht, email, teleN, Adresse, geburtstag, id);
|
||||
allStudents.add(student);
|
||||
view.showInfo(student.toString());
|
||||
|
||||
// String[] array = {student.getId()+"",student.getAdresse(),student.getEmail(),student.getGeburtstag(),student.getGeschlecht(),student.getName(),student.getTele()};
|
||||
// view.getModel().addRow(array);
|
||||
|
||||
|
||||
restAlleInputs();
|
||||
|
||||
}
|
||||
|
||||
public void update() {
|
||||
String idText = view.getEingabeId().getText();
|
||||
int id = Integer.parseInt(idText);
|
||||
student = findStudent(id);
|
||||
if (student == null) {
|
||||
view.showErrore("Stundent ist nicht im System!");
|
||||
return;
|
||||
}
|
||||
String name = view.getEingabeName().getText();
|
||||
String vorname = view.getEingabeVorname().getText();
|
||||
String geburtstag = view.getEingabeGeburtstag().getText();
|
||||
String geschlecht = view.getEingabeGeschlecht().getSelectedItem().toString();
|
||||
String teleN = view.getEingabeTeleN().getText();
|
||||
String email = view.getEingabeEmail().getText();
|
||||
String Adresse = view.getEingabeAdresse().getText();
|
||||
|
||||
if (!name.isEmpty())
|
||||
student.setName(name);
|
||||
else if(!vorname.isEmpty())
|
||||
student.setVorname(vorname);
|
||||
else if(!geburtstag.isEmpty())
|
||||
student.setGeburtstag(geburtstag);
|
||||
else if(!geschlecht.isEmpty())
|
||||
student.setGeschlecht(geschlecht);
|
||||
else if(!teleN.isEmpty())
|
||||
student.setTele(teleN);
|
||||
else if(!email.isEmpty())
|
||||
student.setEmail(email);
|
||||
else if(!Adresse.isEmpty())
|
||||
student.setAdresse(Adresse);
|
||||
|
||||
view.showInfo("Student erfolgreich aktulisiert");
|
||||
restAlleInputs();
|
||||
|
||||
}
|
||||
|
||||
public void loeschen() {
|
||||
|
||||
String idText = view.getEingabeIdZuLoeschen().getText();
|
||||
int id = Integer.parseInt(idText);
|
||||
student = findStudent(id);
|
||||
if (student != null) {
|
||||
allStudents.remove(student);
|
||||
view.showInfo("Student wurde erfolgreich gelöscht");
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
private Student findStudent(int id) {
|
||||
for (Student s : allStudents)
|
||||
if (s.getId() == id)
|
||||
return s;
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public void showUser() {
|
||||
String studentName = view.getEingabeNameZuSuchen().getText();
|
||||
student = findStudent(studentName);
|
||||
if (student != null) {
|
||||
String[] array = {student.getId()+"",student.getAdresse(),student.getEmail(),student.getGeburtstag(),student.getGeschlecht(),student.getName(),student.getTele()};
|
||||
String[] array = {student.getId()+"",student.getName(),student.getVorname(),student.getGeburtstag(),student.getGeschlecht(),student.getTele(),student.getEmail(),student.getAdresse()};
|
||||
view.getModel().addRow(array);
|
||||
view.setEingabeNameZuSuchen("");
|
||||
}else
|
||||
|
@ -82,7 +100,18 @@ public class VerwalteStudent {
|
|||
return null;
|
||||
}
|
||||
|
||||
public void restAlleInputs() {
|
||||
|
||||
|
||||
|
||||
private Student findStudent(int id) {
|
||||
for (Student s : allStudents)
|
||||
if (s.getId() == id)
|
||||
return s;
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
private void restAlleInputs() {
|
||||
view.setEingabeName("");;
|
||||
view.setEingabeTeleN("");
|
||||
view.setEingabeAdresse("");
|
||||
|
|
|
@ -0,0 +1,97 @@
|
|||
package VorlesungsFolien.Verebung;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class Firma {
|
||||
private ArrayList<Mitarbeiter> mas = new ArrayList<>();
|
||||
|
||||
public static void main(String[] args) {
|
||||
Mitarbeiter mi = new Mitarbeiter("Müller", "27.10.1972");
|
||||
Manager ma = new Manager("Stromberg", "01.02.1970", "Finanzen");
|
||||
|
||||
Firma hal = new Firma();
|
||||
|
||||
hal.mitarbeiterEinstellen(mi);
|
||||
hal.mitarbeiterEinstellen(ma);
|
||||
|
||||
Mitarbeiter mi2 = new Mitarbeiter("Mayer", "12.12.1999");
|
||||
hal.mitarbeiterEinstellen(mi2);
|
||||
|
||||
// ma = mi; // geht nicht!
|
||||
|
||||
mi = ma;
|
||||
System.out.println("Polymorphismus");
|
||||
System.out.println(mi.getGehalt());
|
||||
System.out.println(ma.getAbteilung());
|
||||
// System.out.println(mi.getAbteilung()); // geht nicht, wg. statischem Typ Mitarbeiter
|
||||
|
||||
if (mi instanceof Manager)
|
||||
System.out.println( ((Manager)mi).getAbteilung() );
|
||||
|
||||
((Manager)mi2).getAbteilung();
|
||||
}
|
||||
|
||||
private void mitarbeiterEinstellen(Mitarbeiter m) {
|
||||
mas.add(m);
|
||||
}
|
||||
|
||||
private void gehaltsErhöhung() {
|
||||
for (Mitarbeiter m : mas) {
|
||||
double erhöhung = 0.02;
|
||||
|
||||
// System.out.println(m instanceof String); // das geht NICHT, muss zur Vererbungshierachie passen
|
||||
|
||||
if (m instanceof Manager)
|
||||
erhöhung = 0.12;
|
||||
// else if (m instanceof Geschäftsführer)
|
||||
// erhöhung = 0.2;
|
||||
|
||||
m.setGehalt(m.getGehalt() * (1 + erhöhung));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class Mitarbeiter extends Object {
|
||||
private String name;
|
||||
private double gehalt;
|
||||
private String geburtsdatum;
|
||||
|
||||
public Mitarbeiter(String name, String geburtsdatum) {
|
||||
this(name, 35000, geburtsdatum);
|
||||
}
|
||||
|
||||
public Mitarbeiter(String name, double gehalt, String geburtsdatum) {
|
||||
this.name = name;
|
||||
this.gehalt = gehalt;
|
||||
this.geburtsdatum = geburtsdatum;
|
||||
}
|
||||
|
||||
public String getDetails() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public double getGehalt() {
|
||||
return gehalt;
|
||||
}
|
||||
|
||||
public void setGehalt(double gehalt) {
|
||||
this.gehalt = gehalt;
|
||||
}
|
||||
}
|
||||
|
||||
class Manager extends Mitarbeiter {
|
||||
private String abteilung;
|
||||
|
||||
public Manager(String name, String geburtsdatum, String abteilung) {
|
||||
super(name, 65000, geburtsdatum); // das MUSS zuerst gemacht werden!
|
||||
this.abteilung = abteilung;
|
||||
}
|
||||
|
||||
public String getDetails() {
|
||||
return super.getDetails() + " " + abteilung;
|
||||
}
|
||||
|
||||
public String getAbteilung() {
|
||||
return abteilung;
|
||||
}
|
||||
}
|
|
@ -1,47 +0,0 @@
|
|||
package VorlesungsFolien.Verebung;
|
||||
|
||||
public class Main {
|
||||
public static void main(String[] args) {
|
||||
Mitarbeiter mi = new Mitarbeiter("Müller", "27.10.1972");
|
||||
System.out.println(mi.toString()); // nutzt die von Object geerbte Methode
|
||||
System.out.println(mi.getDetails());
|
||||
|
||||
System.out.println();
|
||||
|
||||
Manager ma = new Manager("Stromberg", "01.02.1970");
|
||||
System.out.println(ma.toString()); // wieder die Methode von Object
|
||||
System.out.println(ma.getDetails());
|
||||
}
|
||||
}
|
||||
|
||||
class Mitarbeiter extends Object {
|
||||
private String name;
|
||||
private double gehalt;
|
||||
private String geburtsdatum;
|
||||
|
||||
public Mitarbeiter(String name, String geburtsdatum) {
|
||||
this(name, 35000, geburtsdatum);
|
||||
}
|
||||
|
||||
public Mitarbeiter(String name, double gehalt, String geburtsdatum) {
|
||||
this.name = name;
|
||||
this.gehalt = gehalt;
|
||||
this.geburtsdatum = geburtsdatum;
|
||||
}
|
||||
|
||||
public String getDetails() {
|
||||
return name;
|
||||
}
|
||||
}
|
||||
|
||||
class Manager extends Mitarbeiter {
|
||||
private String abteilung;
|
||||
|
||||
public Manager(String name, String geburtsdatum) {
|
||||
super(name, 65000, geburtsdatum); // das MUSS gemacht werden!
|
||||
}
|
||||
|
||||
public String getDetails() {
|
||||
return super.getDetails() + " " + abteilung;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue