JShell ist ein Befehlszeilentool, das in Java 9 eingeführt wurde. Es ist Javas erstes offizielles REPL-Tool, mit dem eine einfache Programmierumgebung erstellt, Benutzereingaben gelesen, ausgewertet und das Ergebnis gedruckt werden kann .
Deklarationen außerhalb einer Klasse oder Schnittstelle (sowie Deklarationen von Klassen und Schnittstellen selbst) werden nach den folgenden Regeln erstellt.
Externe Deklarationsregeln:
1) Zugriffsmodifikatoren wie public, protected und private können ignoriert werden. Alle Deklarationsfragmente sind für alle anderen Fragmente zugänglich.
<strong>jshell> private int i = 10; i ==> 10 jshell> System.out.println(i); 10</strong>
2) Modifierfinal kann ignoriert werden. Ermöglicht Änderungen und Vererbung.
<strong>jshell> final class A {void m() {} } | Warning: | Modifier 'final' not permitted in top-level declarations, ignored | final class A {void m() {} } | ^---^ | created class A</strong>
3) Der Modifikator static kann ignoriert werden, da es keine Containerklasse gibt.
<strong>jshell> static char letter = 'A; | Warning: | Modifier 'static' not permitted in top-level declarations, ignored | static char letter = 'A'; | ^----^ letter ==> 'A'</strong>
4) Die Modifikatoren default und sync sind nicht zulässig.
<strong>jshell> synchronized void method() {} | Error: | Modifier 'synchronized' not permitted in top-level declarations | synchronized void method() {} | ^----------^</strong>
5) ModifikatorenAbstractsind nur innerhalb von Klassen erlaubt.
<strong>jshell> abstract void method(); | Error: | Modifier 'abstract' not permitted in top-level declarations | abstract void method(); | ^------^</strong>
Das obige ist der detaillierte Inhalt vonWelche Regeln gelten für externe Deklarationen in JShell in Java 9?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!