Skip to main content

Hva er en metaklasse?

En metaklasse brukes i objektorientert programmering (OOP) og er vanligvis tenkt som en klasser.Som de fleste metainformasjon, fungerer Metaclass bak programmet og blir aldri sett av brukeren.Et metaklasse er i stand til å endre informasjon fra klassen og kan kobles til en eller mange klasser, avhengig av kodingsstrukturen.Ikke alle OOP -strukturer inkluderer MetaObject -koding, og noen tilbyr kanskje bare MetaObject -koding i avanserte formater.

I nesten alle typer koding er metakoding en tag eller kodeinje som fungerer på programmet, men det er ikke åpenlyst sett avbrukeren.Metainformasjon er over koden og er i stand til å endre informasjonsstykker eller legge til programmet uten direkte å forstyrre programmet.I OOP brukes en metaklasse til å ta en klasse og endre oppførselen.

En klasse i OOP er et sett med forekomster eller gjenstander plassert under en paraplybegrep.For eksempel kan programmereren lage en klasse som heter "House."Under dette lager programmereren objekter som endrer eller reproduserer aspekter som ofte finnes i et hus, for eksempel rom, møbler og mennesker.Metaklasse er statiske informasjonsstykker som sjelden endres med mindre programmereren finner metainformasjonen ikke fungerer som det skal.Dette holder metaklasse fra å jobbe med flyktige data ved et uhell og sikrer også at atferdsmodifiserere ikke kan manipuleres.

Avhengig av behovet til programmereren, vil en metaklasse enten være koblet til en enkelt klasse eller til mange klasser på en gang.Programmerere kobler oftest metaklasset til en klasse og legger til unike regler eller atferd i metaobjekt -kodingen.Hvis det er flere klasser som alle kan gjennomgå samme atferdsmodifisering, vil metainformasjonen bli brukt på flere forskjellige klasser.Dette er mulig fordi MetaObject -kodingen er tittelen og lett kan kalles når det er nødvendig.

Selv om dette er en vanlig forekomst i mellomliggende til avanserte programmer, tilbyr noen OOP -strukturer ikke metaklasse.Dette er enten fordi det ikke er behov for dem, eller det er andre objekter eller klasser som har lignende funksjoner, men som kalles noe annet.Noen kodingsstrukturer kan også tilby bare komplekse og avanserte metaklasse, der andre har enklere for mellomkodere å bruke.