En Java, il est très facile de coder la conception suivante:modèle d'objet nul en Objective-C
public abstract class Pizza {
public static final Pizza.NULL = new Pizza() {
/* "null" implementations */
}
/* actual/abstract implmentations */
}
Quelle est la méthode préférée pour atteindre le même scénario efficace Objective-C? J'ai été incapable de trouver de la documentation sur le sujet, et j'ai essayé quelques scénarios différents avec static const
, #define
etc mais aucun d'entre eux ne semble fonctionner aussi bien que la méthode Java ci-dessus. Je voudrais éviter d'écrire une classe NullPizza concrète qui a une méthode statique pour obtenir l'instance singleton, car il semble plus approprié que ce soit une propriété/champ final de l'interface de plus haut niveau. Bien que je comprenne comment le modèle NULL serait spécifiquement géré en raison de la méthode unique d'Obj-C de gérer les appels de méthode à «nil», qu'en est-il d'autres instances communes statiques, comme Response.YES et Response.NO? (Voir les commentaires pour la discussion.)
Impossible de compiler ce code sur Java. Qu'est-ce que je fais de mal? –