À quoi servent les astuces dans l'extrait ci-dessous?
Pourquoi les ajouter autour de la fun is(amount:Int ):Boolean { ... }
?
verifier.`is`(amount)
C'est parce que is
est un mot-clé réservé dans Kotlin. Étant donné que Kotlin est censé être interopérable avec Java et is
est un nom de méthode (identificateur) valide en Java, les astuces sont utilisées pour échapper à la méthode afin qu'elle puisse être utilisée en tant que méthode sans la confondre en tant que mot clé. Sans elle, cela ne fonctionnera pas car ce serait une syntaxe non valide.
Ceci est mis en évidence dans la documentation Kotlin :
Échappement pour Java qui sont des mots clés dans Kotlin
Certains des mots clés Kotlin sont des identifiants valides en Java:
in
,object
,is
, etc. Si une bibliothèque Java utilise un Kotlin mot-clé pour une méthode, vous pouvez toujours appeler la méthode en l'échappant avec le caractère backtick (`)foo.`is`(bar)
Il vous permet d'appeler une méthode Java dont le nom est un mot-clé Kotlin. Cela ne fonctionnera pas si vous omettez les astuces.
Le backtick est une "solution de contournement" pour vous permettre d'appeler des méthodes qui ont un nom représentant un mot clé Kotlin.
Voir kotlinlang :
Certains des mots clés Kotlin sont des identificateurs valides en Java: in, object, is, etc. Si une bibliothèque Java utilise un mot clé Kotlin pour une méthode, vous pouvez toujours appeler la méthode en l'échappant avec le caractère backtick (`)
is
dans la liste des Kotlin réservés mots Pour utiliser le mot réservé Kotlin (tel que is
ou object
) pour le nom de la fonction/classe, vous devez l'envelopper aux retours en arrière
Certains des mots clés Kotlin sont des identifiants valides en Java: dans, objet, is, etc. Si une bibliothèque Java utilise un mot clé Kotlin pour une méthode, vous pouvez toujours appeler la méthode en l'échappant avec le caractère backtick (`)