? In Computer-Programmierung, ein " Compiler " nimmt Programmierer Quellcode und verwandelt es in maschinenlesbaren Code . Der Compiler nimmt die Variablen -und Funktionsnamen in den Quellcode und bindet sie an Adressen im Speicher, die Daten aus diesen Variablen und Funktionen enthalten . Auf diese Weise weiß der Computer , wann und wo Werte und Daten verweisen. Mit der objektorientierten Programmierung kann der Compiler dynamisch binden Namen zu Werten oder Speicherorte , um die Flexibilität in Objekt Zuordnung durch dynamische Bindung zu ermöglichen . Variablen und Referenzen
In Computer-Programmierung, bezieht sich "verbindlich" zu beiden Variablen und Referenzen. Wenn ein Compiler " bindet " einen Variablen-Namen , es direkt übersetzt diese Variable Name einer Maschine -Adresse , die diesen Wert enthalten soll. Der Typ der Variable wird diktieren, wie dieser Wert verwendet werden. Eine normale Variable enthält eine wörtliche Wert für das Programm, während eine Referenzgröße , auch bekannt als ein Zeiger , eine Adresse im Speicher enthalten wird.
Object Referenzen
Pointer Referenzen sind die meisten verwendet werden, wenn die dynamische Zuweisung von Speicher für Objekte. Objekte können in einem lokalen Kontext auf dem Programm oder eine Funktion basierend erstellt werden , aber oft Programmierer einen Verweis auf ein Objekt in das Langzeitgedächtnis , die während eines Programms ohne Kopieren verwendet werden kann erstellen. Diese Verweise werden kartiert , um Namen wie andere Variablen verweisen.
Aber Objektvererbung stellt eine neue Art der Bindung , die bestimmte Objekt -orientierte Programmierung Paradigmen erleichtert .
Klassen und Vererbung
Klassen repräsentieren Blaupausen für Objekte , die Definition , welche Art von Daten sie enthalten und was sie tun. Jedoch können auch andere Klassen " erben "-Funktionalität und Daten aus anderen Klassen bei der Umsetzung ihrer eigenen Funktionen. So zum Beispiel eine Klasse " SoccerBall " könnte von einer Basisklasse "ball" erben , so dass es die Daten und Funktionen einer Kugel kann verwenden, während die Erweiterung der Klasse Definition , einen Fußball- Ball in das Programm passen . In der Programmierung Terminologie wird diese Beziehung ruft eine "is -a "-Beziehung , dass eine SoccerBall "ist" eine Kugel. Das Konzept der Vererbung zeigt zwei verschiedene Arten von Bindung : . Statische und späte Bindung
dynamische Bindung
Frühe oder statische Bindung bedeutet, dass der Compiler eine Variable oder Referenznamen bindet auf ein Objekt , wenn das Programm kompiliert wird. So Funktionen und Variablen innerhalb von Klassen wird auf einen Namen bei der Kompilierung gebunden werden. Dynamisch, oder spät, Bindemittel , dass die Bindung geschieht während der Laufzeit. Eine Klasse erbt , dass Aktien eine "is -a "-Beziehung mit einer anderen Klasse , wie im Beispiel der Ball und SoccerBall Klassen können Funktionen aus ihrer Basisklasse neu definieren , um seine eigenen Bedürfnisse anzupassen . So bleibt zwei verschiedene Funktionen für verschiedene Klassen : eine für die Basis, und eine für die Erben Klasse. Späte Bindung wird den Namen der Funktion , ihre entsprechenden Code Standort auf welches Objekt sie ist verknüpft mit der Basis zu binden.