source: Java_Quellcode_SOOP_Vorlesung/oop/Student.java @ 249

Last change on this file since 249 was 249, checked in by tr, 8 years ago

Kommentare in Student

File size: 1.6 KB
Line 
1package eu.hsrw.tr.prog.vl.oop;
2
3/**
4 * Demo Vererbung
5 *
6 * @author Thomas Richter
7 *
8 */
9public class Student extends Person {
10    // Klassenvariable, speichert die nächste zu vergebende Matrikelnummer.
11    // Es existiert genau ein Exemplar der Variablen für ALLE Objekte des
12    // Typs Student.
13    // Das Schlüsselwort static kennzeichnet eine Klassenvariable
14    private static int nextMatNr = 10000;
15   
16    // Matrikelnummer
17    private int matnr;
18    // Studienfach
19    String fach;
20    // Jahr des Studienbeginns
21    int jsb;
22
23    /**
24     * Student Konstruktor
25     *
26     * @param vn
27     *            Vorname
28     * @param nn
29     *            Nachname
30     * @param t
31     *            Tag des Geburtsdatums
32     * @param m
33     *            Monat des Geburtsdatums
34     * @param j
35     *            Jahr des Geburtsdatums
36     * @param f
37     *            Studienfach
38     * @param jsb
39     *            Jahr des Studienbeginns
40     */
41    public Student(String vn, String nn, int t, int m, int j, String f, int jsb) {
42
43        // Konstruktor von Person aufrufen
44        super(vn, nn, t, m, j);
45
46        this.fach = f;
47        this.jsb = jsb;
48
49        // Matrikelnummer setzen
50        this.matnr = Student.nextMatNr;
51        // Zähler für Matrikelnummern erhöhen
52        Student.nextMatNr++;
53    }
54
55    /**
56     * Copy Konstruktor
57     *
58     * @param s
59     *            zu kopierendes Student Objekt
60     */
61    public Student(Student s) {
62        this.vorname = s.vorname;
63        this.name = s.name;
64        // Für Objekte muss wiederum deren Copy Konstruktor aufgerufen werden
65        this.gebdat = new Datum(s.gebdat);
66        this.fach = s.fach;
67        this.jsb = s.jsb;
68        this.matnr = s.matnr;
69    }
70
71    public int getMatnr() {
72        return matnr;
73    }
74
75    public int jahrgang() {
76        return this.jsb;
77    }
78}
Note: See TracBrowser for help on using the repository browser.