Grundlæggende Programmering IT-C, Forår 2001 Løbeseddel 8
Grundlæggende Programmering IT-C, Forår 2001 Løbeseddel 8
Grundlæggende Programmering IT-C, Forår 2001 Løbeseddel 8
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
der giver følgende uddata:<br />
Alle tre beholdere er tomme (true): true<br />
Indhold af v2 = 3375.0<br />
Alle tre beholdere er tomme (false): false<br />
Opgave Java62 — personer på <strong>IT</strong>-C<br />
Definer et klassehierarki til at repræsentere personer på <strong>IT</strong>-C:<br />
Studerende<br />
<strong>IT</strong>CPerson<br />
Ansat<br />
VIP TAP<br />
Stiplede kasser repræsenterer abstrake<br />
klasser.<br />
Start med den abstrakte klasse <strong>IT</strong>CPerson der skal indeholde felter for navn og adresse. Klassen skal også forsynes<br />
med en konstruktor samt en toString metode der laver en tegnstreng sammensat af personoplysningerne. Vi lader<br />
klassen være abstrakt selvom at alle metoderne er implementeret.<br />
Underklassen Studerende er konkret og tilføjer et studienummer til de oplysninger der gemmes om personen.<br />
Overskriv metoden toString fra <strong>IT</strong>CPerson således at studienumeret kommer med (brug super.toString()<br />
for at få fat i toString metoden fra <strong>IT</strong>CPerson). Lav også en passende konstruktor der initialiserer feltet studienummer<br />
samt kalder konstruktoren i superklassen for at få felterne navn og adresse initialiseret.<br />
Underklassen Ansat er abstrakt og tilføjer et lønkontonummer. Den skal også have en passende toString<br />
metode og konstruktor. Vi lader Ansat være abstrakt selvom at alle metoderne er implementeret.<br />
Underklasserne TAP (teknisk–administrativt personale) og VIP (videnskabligt personale) er konkrete udvidelser<br />
af Ansat. TAPere er repræsenteret tilstrækkeligt detaljeret ved egenskaberne der arves fra Ansat. VIPere er kendetegnet<br />
ved at de har undervisning på kurser, så giv hver VIP en tabel over navnene på de kurser han eller hun underviser<br />
på. Forsyn både TAP og VIP med passende konstruktorer og toString metoder. Vink: toString metoden for en<br />
VIP er lidt mere kompliceret end de andre toString metoder idet indholdet af kursustabellen også skal med i den<br />
tegnstreng der returneres. Du skal altså bruge en løkke i toString metoden. Derudover skal konstruktoren for en<br />
VIP tage en kursustabel som argument.<br />
Skriv en metode static void udskriv(<strong>IT</strong>CPerson[] ps) der givet en tabel af <strong>IT</strong>C-personer kan udskrive<br />
den (brug toString). Brug metoden i et program der opretter og udskriver en tabel af studerende, TAPere og<br />
VIPere (mindst én person af hver slags).<br />
Du kan f.eks. bruge følgende klasse til at teste dine personklasser:<br />
public class Java62 {<br />
static void udskriv(<strong>IT</strong>CPerson[] ps) {<br />
// Skriv din kode her<br />
}<br />
}<br />
public static void main(String[] args) {<br />
Studerende stud = new Studerende("Lene Hallenberg", "Øresundsvej 82, 3. tv.", 1);<br />
TAP tap = new TAP("Niels Hallenberg", "Øresundsvej 82, 3. tv.", "234-223423");<br />
String[] vip_kurser = {"<strong>Grundlæggende</strong> <strong>Programmering</strong>", "Konstruktion af <strong>IT</strong> og medier"};<br />
VIP vip = new VIP("Hugo Thorsen", "Hulteager 3, 4. tv.", "234-234234", vip_kurser);<br />
<strong>IT</strong>CPerson[] itc_personer = {stud, tap, vip};<br />
}<br />
System.out.println(stud.toString());<br />
System.out.println(tap.toString());<br />
System.out.println(vip.toString());<br />
udskriv(itc_personer);<br />
2