• Català
  • Castellano
  • English


Definició Dinàmica


La definció id és completament no-restrictiva. Per si mateix, els seus camps no tenen informació sobre l'objecte, excepte que aquest és un objecte.

Però els objectes no són tots iguals. Un Rectangle no pot tenir els mateixos mètodes o variables que un objecte que representa una imatge de mapa de bits. A la vegada, un programa necessita trobar més informació específica sobre els objectes que conté -- quines variables d'objecte té, quins mètodes pot executar, etc. Des de la denominació del tipus id no pot substituir aquesta informació al compilador, cada objecte a de donar-la en temps d'execució.

Això és possible perquè cada objecte duu amb ell una variable isa que identifica la classe de l'objecte -- que indica l'objecte que és. Cada objecte Rectangle a de poder explicar al sistema d'execució que és un Rectangle. Cada Cercle pot dir que és un Cercle. Els objectes amb els mateixos mètodes i els mateixos indicadors de dades (variables) són mèmbres de la mateixa classe.

Els objectes són identificats dinàmicament en temps d'execució. Si això és necessari, el sistema d'execució po trobar la classe exacta d'un objecte, només preguntant a l'objecte. La identificació dinàmica en Objective-C serveix per la creació per enllaç dinàmic, dicutit més endavant.

El punter isa també permet als objectes executar introspecció -- per saber sobre si mateix (o altres objectes). El compilador guarda informació sobre les definicions de la classe en estructures de dades per que usi el sistema d'execució. Utilitzant el sistema d'execució, pots, per exemple, determinar si un objecte implementa un mètode en particular, o descobrir el nom de la seva superclasse.

Les classe d'objectes serán tractades en més detall a "Classes".

També és posible donar informació al compilador sobre una classe d'un objecte per identificació estàtica en el codi font utilitzant el nom de la classe. Els classes són tipus particular d'objectes, i el nom de la classe pot servir com a nom de tipus. Mireu "Tipus de Classe" i "Permetent Comportaments Estàtics".

Comentaris

Opcions de visualització de comentaris

Selecciona la vostra manera preferida de visualitzar els comentaris i feu clic en "Desa la configuració" per activar els canvis.

correccions...

Rectangle a de poder -> Rectangle ha de poder
el sistema d'execució po trobar la classe -> el sistema d'execució pot trobar la classe
dinàmic, dicutit més endavant -> dinàmic, discutit més endavant

Estupeda traducció del manual de macosx!!! l'estic repassant de dalt a baix i m'està anant de conya! aprofitare per anar fent correccions a mida que vagi llegint, per poder tenir una documentació "niquelá!" Laughing out loud
ànims!