En tant que développeur Java qui lit la documentation Objective-C 2.0 d'Apple: je me demande ce que signifie « envoyer un message à nil » - sans parler de son utilité. Prenant un extrait de la documentation:
Il existe plusieurs modèles dans Cocoa qui profitent de ce fait. La valeur renvoyée par un message à nil peut également être valide:
- Si la méthode retourne un objet, tout type de pointeur, tout scalaire entier de taille inférieure ou égale à sizeof (void *), un float, un double, un long double ou un long long, alors un message envoyé à nil renvoie 0 .
- Si la méthode renvoie une structure, telle que définie par le Guide des appels de fonction ABI de Mac OS X à renvoyer dans les registres, un message envoyé à nil renvoie 0,0 pour chaque champ de la structure de données. Les autres types de données de structure ne seront pas remplis de zéros.
- Si la méthode renvoie autre chose que les types valeur mentionnés ci-dessus, la valeur de retour d'un message envoyé à nil n'est pas définie.
Java a-t-il rendu mon cerveau incapable de comprendre l'explication ci-dessus? Ou y a-t-il quelque chose qui me manque qui rendrait cela aussi clair que du verre?
J'ai l'idée de messages / récepteurs en Objective-C, je suis simplement confus au sujet d'un récepteur qui se trouve être nil
.