is-Logo PAT 01 -  V. 2.2
Musterlösung

S. Spolwig

[Home | Unterrichtssequenzen | PAT 01]

UNIT uAdresse;
(* ******************************************************************** *)
(* K L A S S E : TAdresse                                               *)
(* -------------------------------------------------------------------- *)
(* Version     : 1.2                                                    *)
(* Autor       : S. Spolwig, OSZ-Handel I, 10997 Berlin                 *)
(*                                                                      *)
(* Aufgabe     : bildet das selbständige Objekt Adresse ab.             *)
(*                                                                      *)
(* Compiler    : DELPHI 3.0                                             *)
(* Aenderung   : V. 1.1  15-AUG-98                                      *)
(*                  1.2  04-SEP-98  Datei lesen, schreiben              *)
(*                  1.21 20-JUL-99  procedure Init                      *)
(* ******************************************************************** *)
INTERFACE
(* ========================== Export ================================== *)
USES Classes;
type
   TAdresse = class (TObject)
     protected
     Strasse     : string[25]; (* Strasse u. Nr *)
     Plz         : string[5];
     Ort         : string[20];
     TelefonNr   : string[12];
     public
     constructor Create;                virtual;
     procedure Init;                    virtual;
     procedure SetStrasse (st: string); virtual;
     procedure SetPlz (p : string);     virtual;
     procedure SetOrt (o : string);     virtual;
     procedure SetTelefonNr(t : string);virtual;
     function GetStrasse : string;      virtual;
     function GetPlz     : string;      virtual;
     function GetOrt     : string;      virtual;
     function GetTelefonNr : string;    virtual;
     procedure InDateiSchreiben (var FS: TFilestream); virtual;
     procedure AusDateiLesen (var FS: TFilestream);    virtual;
   end; (* TAdresse *)
(* -------------------- B e s c h r e i b u n g -------------------------
Oberklasse     : -
Bezugsklassen  : Classes  import: TFilestream, read , write
Methoden
--------
Create
  Auftrag: Objekt erzeugen und initialisieren
  vorher : -
  nachher: Adresse ist erzeugt; alle Felder sind leer
Init
  Auftrag: Objekt Initialisieren
  vorher : -
  nachher: alle Felder sind leer
Set...
  Auftrag: Attribut schreiben
  vorher : Adresse ist init.
  nachher: Attribut ist gesetzt
Get...
  Anfrage: Attribut aus dem Objekt lesen
  vorher : Adresse ist init.
  nachher: -
InDateiSchreiben (var datei : TFilestream)
  Auftrag: Attribute auf die Festplatte speichern
  vorher : datei ist geöffnet
  nachher: Attribute sind an dateiuebergeben
AusDateiLesen (var datei : TFilestream)
  Auftrag: Attribute von der Festplatte laden
  vorher : datei ist geöffnet
  nachher: Attribute sind an Patient uebergeben
----------------------------------------------------------------------- *)
IMPLEMENTATION
(* ==================================================================== *)
constructor TAdresse.Create;
(* -------------------------------------------------------------------- *)
begin
  inherited Create;
  Init;
end;
procedure TAdresse.Init;
(* -------------------------------------------------------------------- *)
begin
  Strasse := '';
  Plz     := '';
  Ort     := '';
  TelefonNr := '';
end;
procedure TAdresse.SetStrasse (st: string);
(* -------------------------------------------------------------------- *)
begin
  Strasse := st;
end;
procedure TAdresse.SetPlz (p : string);
(* -------------------------------------------------------------------- *)
begin
  Plz := p;
end;
procedure TAdresse.SetOrt (o : string);
(* -------------------------------------------------------------------- *)
begin
  Ort := o;
end;
procedure TAdresse.SetTelefonNr (t : string);
(* -------------------------------------------------------------------- *)
begin
  TelefonNr := t;
end;
function TAdresse.GetStrasse : string;
(* -------------------------------------------------------------------- *)
begin
  result := Strasse;
end;
function TAdresse.GetPlz : string;
(* -------------------------------------------------------------------- *)
begin
  result := Plz;
end;
function TAdresse.GetOrt : string;
(* -------------------------------------------------------------------- *)
begin
  result := Ort;
end;
function TAdresse.GetTelefonNr : string;
(* -------------------------------------------------------------------- *)
begin
  result := TelefonNr;
end;
procedure TAdresse.InDateiSchreiben (var Fs : TFilestream);
(* -------------------------------------------------------------------- *)
begin
  Fs.write(Strasse, sizeof(Strasse));
  Fs.write(Plz, sizeoF(Plz));
  Fs.write(Ort, sizeoF(Ort));
  Fs.write(TelefonNr, sizeoF(TelefonNr));
end;
procedure TAdresse.AusDateiLesen (var Fs : TFilestream) ;
(* -------------------------------------------------------------------- *)
begin
  Fs.read(Strasse, sizeof(Strasse));
  Fs.read(Plz, sizeof(Plz));
  Fs.read(Ort, sizeof(Ort));
  Fs.read(TelefonNr, sizeof(TelefonNr));
end;
END.



©    05. Oktober 2008    Siegfried Spolwig

page_top