Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung | |||
faecher:informatik:oberstufe:glossar:geheimnisprinzip:start [05.04.2022 14:41] – Matthias Waffenschmidt | faecher:informatik:oberstufe:glossar:geheimnisprinzip:start [Unbekanntes Datum] (aktuell) – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Geheimnisprinzip ====== | ||
- | |||
- | Unter dem Geheimnisprinzip versteht man die Absicht, die internen Details der Implementierung einer Klasse nach außen hin zu verbergen. | ||
- | |||
- | Dies wird dadurch erreicht, dass die Datenfelder mit dem Zugriffsmodifikator //private// definiert werden. Hierdurch kann nur die Klasse selbst direkt auf die [[..: | ||
- | |||
- | Der Zugriff erfolgt über sogenannte Getter-/ | ||
- | |||
- | Das Geheimnisprinzip bietet folgende Vorteile: | ||
- | |||
- | * der Benutzer der Klasse muss sich nicht mit der genauen Implementierung der Klasse auskennen (Stichwort [[..: | ||
- | * es wird verhindert, dass ein Benutzer sich zu stark auf die Details der Implementierung verlässt und man diese als Autor der Klasse später nicht ohne weiteres ändern könnte. | ||
- | * durch den indirekten Zugriff über eine Setter-Methode kann verhindert werden, dass das Datenfeld einen unsinnigen Inhalt annimmt. | ||
- | |||
- | Allerdings können Datenfelder auch mit anderen Zugriffsrechten angelegt werden, hier die komplette Übersicht: | ||
- | |||
- | * public – (engl. öffentlich), | ||
- | * protected – (engl. geschützt), | ||
- | * private – (engl. privat), nur die Klasse selbst kann es sehen | ||
- | * package – (engl. Paket), innerhalb des Pakets sichtbar | ||