12_static
Code-Dateien
| Dateiname | Aktion |
|---|---|
| CODECode_Fahrzeug.zip | Download |
| CODECode_Mitarbeiter.zip | Download |
PDF-Dokumente
| Dateiname | Aktion |
|---|---|
| PDFFolie_Mitarbeiter.pdf | Öffnen |
Videos
| Dateiname | Aktion |
|---|---|
| VIDEOVideo_Fahrzeug_D | Abspielen |
| VIDEOVideo_Mitarbeiter_D | Abspielen |
Lernmaterialien
static
Definition
static Eigenschaft
Es gibt genau eine Kopie für die ganze Klasse.
Alle Objekte teilen sich denselben Wert.
class Counter {
private static int count = 0;
public Counter() {
count++;
}
}Counter.count ist für alle Counter-Objekte
gemeinsam.
static Methode
(Klassenmethode)
Kann man ohne Objekt aufrufen.
Darf nicht direkt auf Instanzvariablen/-methoden zugreifen (weil kein
thisexistiert).
class MathUtil {
static int add(int a, int b) {
return a + b;
}
}
int x = MathUtil.add(2, 3);Implementierung
public abstract class Student implements Serializable {
private int studentID;
private static int lastID = 1000;
private String name;
...Für die neue Eigenschaft studentID werden get und set
Methoden benötigt!
public int getStudentID() {
return studentID;
}
public void setStudentID() {
lastID++;
this.studentID = lastID;
}Hinzufügen der studentID in der toString
Methode.
@Override
public String toString() {
return studentID + ": " + name + " " + alter + " Jahre " + klasse;
}Im Konstruktor gehört die setStudentID Methode
aufgerufen.
public Student(String name, int alter, String klasse) throws StudentException {
setStudentID();
setName(name);
...
}
//A;Thomas;25;3ACIF;Y
public Student(String zeile) throws StudentException {
...
setStudentID();
setName(daten[1]);Ausgabe beim Test.
1001: Thomas 25 Jahre 3ACIF hat Matura
1002: Alex 25 Jahre 3ABIF hat KEINE Matura
1003: Susi 19 Jahre 3AHIF 2 Anzahl der Ferialpraktika
1004: Karl 21 Jahre 3ACIF hat Matura
1005: Max 15 Jahre 2CHIF 1 Anzahl der FerialpraktikaJavaDoc
Die Methode wird aufgerufen:
Math.abs(-25.0);
=> 25.0