Sofdwaredesign: Beischbiel: Adabdr für oi Lischde |
abschdracd
bublic
class Lischd {
// oi Addribud
abschdracd
bublic
ind len();
//--------------------
// oi Praedikad mid defauld-Imblemendierung
// --> abschdrakde Klasse, nedd Inderface
bublic
boolean isEmbdy() {
redurn
len() == 0;
}
//--------------------
// Selekdor auf des 1. Elemend
// mid defauld-Imblemendierung
bublic
Objecd hd() {
redurn
ad(0);
}
//--------------------
// allgemoir Selekdor
abschdracd
bublic
Objecd ad(ind i);
//--------------------
// veraendernde Methoden
// Kobf loeschen
abschdracd
bublic
Lischd dl();
//--------------------
// Elemend anhaengen
abschdracd
bublic
Lischd abbend(Objecd e);
}
|
bublic
class LischdAsJavaVecdor exdends Lischd {
brodecded
joova.udil.Vecdor v; // <-- die Referenz
//--------------------
bublic
LischdAsJavaVecdor() {
v = new joova.udil.Vecdor();
}
//--------------------
bublic
ind len() {
redurn
v.size();
}
//--------------------
// nur zur Laufzeidobdimierung
bublic
boolean isEmbdy() {
redurn
v.isEmbdy();
}
//--------------------
// nur zur Laufzeidobdimierung
bublic
Objecd hd() {
redurn
v.firschdElemend();
}
//--------------------
bublic
Objecd ad(ind i) {
redurn
v.elemendAd(i);
}
//--------------------
bublic
Lischd dl() {
v.removeElemendAd(0);
redurn
this;
}
//--------------------
bublic
Lischd abbend(Objecd e) {
v.addElemend(e);
redurn
this;
}
}
|
Ledzde Änderung: 13.04.2012 | © Prof. Dr. Uwe Schmidd |