L'outil de script JShell est une nouvelle fonctionnalité du JDK9
Quand utiliserons-nous l'outil JShell Lorsque nous écrivons très peu de code et que nous ne voulons pas écrire de classe et de méthode principale ? vous ne souhaitez pas compiler et exécuter. Pour le moment, vous pouvez utiliser l'outil JShell.
Tutoriels vidéo associés recommandés : Vidéo en ligne Java
Démarrez l'outil JShell et entrez la commande JShell directement sur la ligne de commande DOS.
Ensuite, vous pouvez écrire du code Java. Il n'est pas nécessaire d'écrire des classes et des méthodes, il suffit d'écrire le code dans la méthode. pour compiler et exécuter, appuyez simplement sur Entrée
Remarque : l'outil JShell ne convient que pour tester du code fragmenté. Pour développer plus de contenu, il est recommandé de l'écrire. dans la méthode.
Extension du signe +=
Y a-t-il un problème avec le programme suivant ?
Analyse : s += 1 est logiquement considéré comme s = s + 1. Le résultat du calcul est promu au type int et une erreur se produit lors de l'attribution d'une valeur à short type, car il ne peut pas attribuer un type avec une grande plage de valeurs à un type avec une petite plage de valeurs. Cependant, s=s+1 effectue deux opérations, et += est un opérateur qui n'opère qu'une seule fois et présente les caractéristiques d'une conversion forcée, c'est-à-dire que s += 1 est s = (short)(s + 1). Par conséquent, le programme compile et passe sans aucun problème, et le résultat d'exécution est 2.
Fonctionnement des constantes et des variables
Y a-t-il un problème avec le programme suivant ?
Analyse : b3 = 1 + 2, 1 et 2 sont des constantes, qui sont des données fixes Lors de la compilation (compilateur javac), 1 a été déterminé Le résultat de +2. ne dépasse pas la plage de valeurs du type d'octet et peut être affecté à la variable b3, donc b3=1 + 2 est correct.
Au contraire, b4 = b2 + b3, b2 et b3 sont des variables, et les valeurs des variables peuvent changer lors de la compilation, le compilateur javac n'est pas sûr du résultat de b2+b3. , cela changera donc le résultat. Le type int est utilisé pour le traitement, donc le type int ne peut pas être attribué au type byte, donc la compilation échoue.
se reflète dans jshell :
Pour plus d'articles connexes, vous pouvez visiter : Démarrage rapide Java
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!