LKG/Inf 11 2011/Kapselung
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
Man kann Datenfelder sowie Methoden private oder public setzen. Im Allgemeinen sollten alle Datenfelder private (also von außen kein Zugriff) und Methoden public (Zugriff erlaubt) sein.
<code>type TAuto=class
private
farbe: string;
geschwindigkeit: integer;
tankfuellung: integer; // in ml
maxTankvolumen: integer;
public
constructor create(nFarbe:string,nTankfuellung:integer, nMaxTankVol:integer);
function getGeschwindigkeit:integer;
procedure setGeschwindigkeit(nGeschwindigkeit:integer);
function getFarbe:string;
function getTankfuellung:integer;
procedure Tanken(nTankMenge:integer);
end;</code>
Sonst könnte man von außen immer noch z.B.
<code>ferrari2.Tankfuellung:=2*maxTankvolumen;</code>
ausführen.