Une nouvelle classe est déclarée avec la directive @interface. Elle importe le fichier d'interface de sa superclass:
#import "saSuperclasse.h"
@interface maClass : saSuperclass < une liste de protocole > déclarations des variables d'instance déclarations des méthodes @end
La liste de protocoles est optionnelle. Si les deux point et le nom de la super classe sont oubliés, la classe est une nouvelle classe racine.
Une définition de classe importe sa propre interface
#import "maClasse.h"
@implémentation maClasse définitions des méthodes @end