? I dataprogrammering, en " kompilator " tar programmerer kildekode og gjør den til maskinlesbar kode . Kompilatoren tar variablene og funksjon navn i kildekoden og binder dem til adresser i minnet som inneholder data fra disse variabler og funksjoner. På denne måten vet datamaskinen når og hvor du skal referere til verdier og data . Med objektorientert programmering, kan kompilatoren dynamisk binde navn til verdier eller minneplasser, for å tillate fleksibilitet i objekt oppdrag gjennom dynamisk binding . Variabler og referanser
I dataprogrammering , refererer " binding " til både variabler og referanser. Når en kompilator " binder " en variabel navn , oversetter det direkte at variabelnavnet til en maskin adresse som skal inneholde denne verdien. Den type variabel vil diktere hvordan denne verdien skal brukes . En normal variable vil inneholde en bokstavelig verdi for programmet, mens en referanse variabel, også kjent som en peker , vil inneholde en adresse i minnet .
Object Referanser
Pointer referanser er mest brukt når dynamisk tildele minne for objekter. Objekter kan lages i en lokal kontekst basert på program eller en funksjon , men ofte programmerere vil opprette en referanse til et objekt i langtidshukommelsen som kan brukes i hele et program uten å kopiere den. Disse referansene er kartlagt til å referere navn som andre variabler.
Objekt arv introduserer en ny type binding som forenkler visse objekt - orientert programmering paradigmer .
Klasser og Arv
Klassene representerer plantegninger for objekter, definere hva slags data de inneholder og hva de gjør . Imidlertid kan andre klasser " arve " funksjonalitet og data fra andre klasser mens implementere sine egne funksjoner. Så, for eksempel , en klasse " Soccerball " kan arve fra en base class " ball" slik at den kan bruke data og funksjoner av en ball samtidig utvide klassen definisjonen å matche en fotball i programmet. I programmering terminologi, er dette forholdet kaller en "er - et " forhold , ved at en Soccerball "er" en ball . Begrepet arv illustrerer to ulike typer forpliktende : . Statisk og sen binding
Dynamiske Binding
Tidlig eller statisk bindende betyr at kompilatoren binder en variabel eller henvisninger navn til et objekt når programmet er kompilert . Så funksjoner og variabler inne klasser vil være bundet til et navn på samling tid . Dynamiske , eller sent , bindende betyr at binding skjer under kjøring . En arve klasse som deler en "er - en" forhold med en annen klasse, som i eksempelet med ballen og Soccerball klasser , kan omdefinere funksjoner fra sin base klasse som passer egne behov. Dette vil la to forskjellige funksjoner i ulike klasser : en for basen, og en for å arve klassen . Sene binding vil binde funksjon navn til sin riktige koden plassering basert på hvilket objekt det er forbundet med .