2010-09-30 8 views
2

peut-il me dire la différence entre l'importation que nous utilisons dans Java et celui dans l'objectif C?Différence entre l'importation dans Java et l'objectif C

+0

dup: http: //stackoverflow.com/questions/439662/what-is-the-difference-between-import-and-include-in-objective-c –

+1

@org: euh, non, cette question parle de '# import' et' # include' dans Obj-C seulement. Celui-ci parle de 'import' en Java vs' # import' dans Obj-C. – BoltClock

+1

@ BoltClock est une licorne ok, je m'excuse, –

Répondre

3
  • En Java, import long.package.name.Foo; indique au compilateur que chaque fois Foo apparaît comme aa nom de la classe dans le fichier source de courant, cela signifie vraiment long.package.name.Foo - donc tout import fait vraiment est vous permet d'écrire du code source plus court. La recherche de définitions de classe s'effectue via la convention selon laquelle les noms de classe correspondent aux noms de fichiers et les noms de packages correspondent aux hiérarchies de répertoires.

  • Dans Objective C, une déclaration #import est en fait remplacé par le contenu du fichier importé par le préprocesseur, à moins que ce fichier a déjà été importé (ce qui est la différence entre #import et la directive #include plus).

+0

Est-ce que cela signifie que dans Java, au lieu d'écrire "long.package.name.Foo" pour représenter un Foo, l'importation nous aide à le référencer rapidement. – Krishnan

+1

@Krishnan: Oui, c'est exactement ce que l'importation fait. –

+1

et c'est tout ce qu'il fait. Pas d'effets secondaires magiques (comme l'utilisation de Perl peut avoir par exemple) à se méfier. – Thilo

1

#import est une variante (qui vérifie la duplication) de #include, ce qui entraîne juste le contenu du fichier inclus étant collés dans votre fichier source.

L'instruction import de Java indique au compilateur où rechercher les classes (et autres) qui ne sont pas qualifiées par leur nom complet dans le code source.

Questions connexes