Startseite   |  Site map   |  A-Z artikel   |  Artikel einreichen   |   Kontakt   |  
   
  •  
    Biologie
    Themen der Chemie
    Deutsch online artikel
    Englisch / Englische
    Franzosisch
    Geographie
    Geschichte
    Informatik
    Kunst
    Mathematik / Studium
    Musik
    Philosophie
    Physik
    Recht
    Sport
    Wirtschaft & Technik



    Biographie

    Impressum

informatik artikel (Interpretation und charakterisierung)

Mp3

Prinzipien der objektorientierten


1. Java
2. Viren



Programmierung (OOP) Die Ziele der OOP sind:

- bessere Warbarkeit
- Wiederverwendbarkeit

1.) Datenkapselung

Komplexe Datenstrukturen (wie zB ein Stack) werden vom Anwendungsprogramm nicht direkt verwendet. Zum Zugriff auf solche Strukturen bedient man sich sogenannter "Zugriffs-Funktionen" (zB: push(x), pop( )). Dieses Prinzip, welches auch in der OOP zur Anwendung kommt, nennt man Datenkapselung. In der OOP sind diese Zugriffs-Funktionen in Form von Methoden realisiert.

Die Implementierung der Datenstruktur, die eigentlichen Strukturen/Variablen zum speichern der Daten (zB Stack: Array oder Liste ?), bleiben dem Anwendungsprogramm/Programmierer verborgen. Es sind lediglich die Schnittstellen bekannt. Dies wird als "Information-Hiding" bezeichnet.

Vorteil: Änderung bei der Datebstruktur-Implementierung -> keine Auswirkung auf Anw. Programm!

2.) Klassen

Klassen kann man als "Baupläne" oder "Vorlagen" für gleichartige Objekte verstehen.
In einer Klasse werden alle Eigenschaften und Methoden der Objekte festgelegt.
Eine Klasse lässt sich mit einem Datentyp der nicht-OO Programmierung vergleichen.

Bsp: Klasse: Person
Objekte sind folglich "Instanzen" einer Klasse.

Beispiel einer Klassen-Vereinbarung in C++:












Beispiel einer Klassen-Implementierung in C++:


















3.) Objekte

Ein Objekt ist im Grunde eine strukturierte Variable und hat einen inneren Zustand. D.h. sie besitzen sog. "Eigenschaften". Eigenschaften sind sozusagen Unter-Variablen innerhalb eines Objekts, die normalerweise nur dem Objekt selbst bekannt sind (siehe Datenkapselung). Eigenschaften lassen sich mit Komponenten einer Struktur in C vergleichen.

Ein Objekt hat sog. "Methoden". Sie dienen, um auf die Eigenschaften der Klasse zugreifen zu können. Methoden sind Funktionen oder Prozeduren innerhalb der Klasse.

Ein Objekt reagiert auf Nachrichten anderer Objekte, durch die Ausführung einer Methode, bzw. sendet selbst Nachrichten an andere Objekte um deren Methoden zu aktivieren. Eine Nachricht entspricht also einem Funktionsaufruf.

Bsp (Objekt der Klasse Person):

Objekt: Karl Müller
Eigenschaft: 23 Jahre alt

Methode: lerne
Nachricht: lerne C++.


Beispiel einer Klassen-Verwendung bzw. Instantiierung in C++:

(Vereinbarung und Implementierung der Klasse "Point" unter Klassen)


Gegenüberstellung:
Vergleich der Begriffe der OOP mit nicht-OOP Begriffen.


Klasse Daten-Typ
Objekt (strukturierte) Variable
Eigenschaft Wert einer Variablen (Komponente)
Methode Funktion / Prozedur
Nachricht Aufruf einer Funktion / Prozedur




4.) Vererbung:

Vererbung wird zum Aufbau einer Hierarchie von ähnlichen Klassen benutzt.
Untergeordnete Klassen bezeichnet man in der OOP als "abgeleitete Klassen", während man bei übergeordneten Klassen von "Basisklassen" spricht.

Eine "abgeleitete Klasse"
- erbt Eigenschaften und Methoden der "Basisklasse",
- kann Eigenschaften hinzufügen,
- kann neue Methoden hinzufügen und geerbte Methoden durch eigene ersetzen.

Durch die Vererbung wird immer weitere Spezialisierung bewirkt.
Die Vererbung stellt eine "Is-A"("ist-ein")-Beziehung dar (zB Schüler ist-eine Person).

Es ist auch möglich, dass eine "abgeleitete Klasse" mehrere "Basisklassen" hat, man spricht von mehrfach-Vererbung. Die "abgeleitete Klasse" erbt von allen "Basisklassen" sämtliche Methoden und Eigenschaften.



Beispiel einer Klassen-Hierarchie:




5. Mechanismen und Funktionalität

Konstruktor
Jede Klasse hat einen Konstruktor. Der Konstruktor ist eine Prozedur die den selben Namen wie die Klasse trägt. Diese Prozedur wird automatisch bei der Instantiierung eines Objekts ausgeführt. Der Konstruktor wird benutzt um die Eigenschaften zu Initialisieren.


Destruktor
Der Destruktor ist das Gegenstück zum Konstruktor. Er trägt (in C++) den Namen der Klasse mit führendem "~"-Zeichen. Diese Prozedur wird am Ende der Lebensdauer eines Objekts aufgerufen. Sie wird verwendet wenn es etwas zu "bereinigen" gibt (zB: Abbau einer verketteten Liste).

Für Konstruktor und Destruktor gilt: Wird vom Programmierer keine solche Prozedur definiert, so wird ein Standard-Konstruktor/Destruktor verwendet. Diese beiden Prozeduren existieren also bei jeder Klasse.

Zugriffsrechte
In C++ existieren drei Zugriffsbeschränkungen für die Elemente einer Klasse:
PUBLIC: Jeder (auch außerhalb der Klasse) darf zugreifen.
PRIVATE: Nur Methoden der eigenen Klasse dürfen zugreifen.
PROTECTED: Nur Methoden der eigenen und abgeleiteter Klassen dürfen zugreifen.
Zugriffsrechte können (in C++) in der Klasse selbst und bei der Vererbung festgelegt werden.


Der this-Zeiger
Jede Methode einer Klasse (in C++) hat einen versteckten Parameter, den sogenannten this-Zeiger. Dieser Zeiger zeigt auf das Objekt um dessen Methode es sich handelt. Mittels dieses Zeigers funktioniert der Zugriff auf die Eigenschaften innerhalb einer Methode.

 
 




Datenschutz

Top Themen / Analyse
Der SQS-Plan
CyberCash
Der flimmerfreie Bildschirm:
Der Pentium ist tot, es lebe der Pentium
Kurzerklärung der Begriffe Compiler, Interpreter, Debugger, Linker und Emulator
Cinch
Bildschirm
INTERRUPTABLAUFDIAGRAMM
Ansteuerung von Schrittmotoren durch einen Computer: "Wer Rechnet da ?"
Apple setzt Maßstäbe





Datenschutz

Zum selben thema
Netzwerk
Software
Entwicklung
Windows
Programm
Unix
Games
Sicherheit
Disk
Technologie
Bildung
Mp3
Cd
Suche
Grafik
Zahlung
Html
Internet
Hardware
Cpu
Firewall
Speicher
Mail
Banking
Video
Hacker
Design
Sprache
Dvd
Drucker
Elektronisches
Geschichte
Fehler
Website
Linux
Computer
A-Z informatik artikel:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z #

Copyright © 2008 - : ARTIKEL32 | Alle rechte vorbehalten.
Vervielfältigung im Ganzen oder teilweise das Material auf dieser Website gegen das Urheberrecht und wird bestraft, nach dem Gesetz.