web-dev-qa-db-fra.com

Kotlin File vs Class. Quelle est la différence?

Je viens tout juste de commencer à utiliser Kotlin et j'ai créé des activités en tant que fichiers Kotlin. Ils fonctionnent, mais je veux tout de même savoir quelle est la différence entre la création d'un fichier et d'une classe dans Android Studio.

23
Vlad Skurtolov

 icon Classe Kotlin: Android Studio l'affiche sans extension si le fichier ne contient qu'UNE SEULE classe.

Contrairement à Java, Kotlin vous permet de mettre certaines choses en dehors de la classe comme:

  • fonctions d'extension 
  • des constantes

Par conséquent, si vous ajoutez l'un des éléments ci-dessus ou une autre classe au fichier, Android Studio le changera en "Fichier Kotlin":

 icon avec l'extension .kt

Supprimer les extras ci-dessus, affichera à nouveau le fichier comme "Classe Kotlin"

4
taurelas

La seule différence est que la création d'un fichier crée un fichier sans classe et que la création d'une classe crée un fichier avec une classe. Vous pouvez ensuite ajouter d'autres classes au fichier, supprimer des classes ou apporter d'autres modifications. Le résultat final ne dépend pas de la manière dont le fichier a été créé.

32
yole

Comme je peux le voir, le fichier Kotlin contient de nombreuses classes. Mais une classe Kotlin a une classe portant ce nom, ce n’est qu’une observation. 

1
user2734915

Oui, si vous définissez plus d'une classe, elle sera automatiquement convertie en fichier, sinon elle sera automatiquement convertie en classe. En général, si vous avez besoin de définir des variables ou des méthodes pouvant être directement référencées, vous pouvez les mettre dans le fichier.

0
FoAng