2015-10-26 1 views
-2

"Instance" signifie en Objective-C? Veuillez me dire où utiliser la méthode de classe Et où utiliser la méthode d'instance, dites-moi aussi où nous utilisons la méthode (Instacetype)? pourquoi/où nous utilisons des paramètres multiples?Méthode de classe à utiliser, méthode d'instance dans Objective-C

+0

Comment avez-vous créé l'objet? NSObject * obj = [[NSObject alloc] init]; Dans ce alloc est la méthode de classe et init est la méthode d'instance ... – Spynet

+0

Directement nous appelons à travers le nom de classe est la méthode de classe et certaines restrictions sont là pls se référer à ce lien http://stackoverflow.com/questions/1053592/ c'est comme une méthode statique – Spynet

+0

Ceci est trop large pour stackoverflow, qui consiste à répondre à des questions de programmation, pas à enseigner l'informatique. Acheter un livre ou rejoindre un cours. – trojanfoe

Répondre

1

Une méthode de classe est une méthode dont le paramètre self fait référence à l'objet de classe de la classe.

Une méthode d'instance est une méthode dont le paramètre self est une référence à une instance spécifique de la classe.

Telles sont les différences techniques.

Une réponse plus pratique est qu'une méthode d'instance fonctionne sur une seule instance de la classe, alors qu'une méthode de classe fonctionne à un niveau plus global, non spécifique. Une méthode de classe peut agir comme une méthode d'usine, telle que la méthode stringWithFormat: de NSString. Il peut également être utilisé pour configurer le comportement qui affectera toutes les instances de la classe. Il peut également être utilisé pour fonctionner sur une collection d'instances de la classe, telles que le tri ou le filtrage.

instancetype est un mot-clé qui peut être utilisé comme espace réservé pour le type de la classe actuelle. Il dit au compilateur: prétendre que j'ai écrit < mon nom de classe > ici, donc si vous voyez le résultat de cette méthode assignée quelque part, vous savez de quel type il est censé être.