Articles, actualités, tutoriaux, astuces, bouts de code…
Dans: Articles| Frameworks commun, Objective-C| Incontournables
14 déc 2009Suite à ce sujet, je vous propose un petit résumé pour comprendre la méthode init() en Objective-C. C’est une méthode d’instance de base qui permet de créer un nouvel objet.
Ce sujet intéressera tout débutant se mettant à Cocoa.
Utilisons ce code d’exemple, très simple :
1 2 3 4 5 6 | - (id)init { if (self = [super init]) { // initialiser des variables d'instances ici par exemple } return self; } |
A la ligne 1, nous déclarons notre méthode init qui retourne un objet non typé id.
A la ligne 2, nous faisons 2 choses. Nous appelons [super init], ce qui a pour effet de nous retourner l’objet de la classe parente à la classe en cours. Nous ajoutons if pour tester si l’objet créé n’est pas nil. Il est en effet inutile d’essayer d’instancier d’autres variables de l’objet en cours (ou de faire autre chose) si celui si n’a pas été créé !
A la ligne 5, nous retournons l’objet self qui vient d’être créé (si tout s’est bien passé)… ou nil en cas d’échec.