11.11.21 6715 Views 4

credit: ©zemkooo2

JAVA Blog

Was ist Java JShell? (Tutorial)

JShell ist ein effektives Werkzeug zum schnellen Testen von Java Code. Dabei bietet die JShell eine einfache interaktive Programmier-Umgebung in Form einer Kommandozeile. Wie du darauf zugreifen kannst, zeigen wir dir in diesem Tutorial.

Falconbyte unterstüzen

Betrieb und Pflege von Falconbyte brauchen viel Zeit und Geld. Um dir auch weiterhin hochwertigen Content anbieten zu können, kannst du uns sehr gerne mit einem kleinen "Trinkgeld" unterstützen.

Thema in Kurzform

  • JShell ist eine Kommandozeile und funktioniert nach dem "Read-Evaluate-Print Loop" Prinzip.
  • Es lassen sich damit Java-Codes direkt ausführen.
  • Gestartet werden kann die JShell über das Betriebssystem, die IDE oder auch über einen online-Dienst.

    Inhaltsverzeichnis

  1. Was ist JShell?
  2. JShell starten
  3. JShell Beispiele
  4. Für Anfänger geeignet?

Was ist Java JShell?

Das Java Shell Tool (kurz: JShell) ist ein effektives Werkzeug zum schnellen Testen von Java Code (Prototyping). Es ist seit JDK 9 verfügbar.

Die JShell ist eine einfache interaktive Programmier-Umgebung in Form einer Kommandozeile, die nach dem Prinzip der Read-Evaluate-Print Loop (REPL) funktioniert. Das heißt:

  • Read: Die Nutzer-Eingaben werden ausgelesen.
  • Evaluate: Die Nutzer-Eingaben werden ausgeführt
  • Print: Das Ergebnis wird angezeigt
  • Loop: Das Programm wartet beständig auf neue Eingaben

Der über die JShell eingegebene Code benötigt keine Main-Klasse und kann sofort gestartet werden. Es ist damit der direkteste Weg, um in Java zu programmieren.

JShell starten

Es gibt verschiedene Wege, um JShell zu starten.

Prompt des Betriebssystems

JShell kann über die Kommandozeile des Betriebssystems gestartet werden ("Eingabeaufforderung" unter Windows bzw. "Terminal" unter MacOS).

Gib dort Jshell ein und bestätige mit ENTER (unter Umständen musst du zuvor noch in das bin bzw. lib Verzeichnis deiner JDK-Installation wechseln). Nach erfolgreichem Start der JShell erscheint der Begrüßungstext:

Java JShell

Über die IDE

Auch IDEs wie IntelliJ bieten JShell über das integrierte Terminal an. Ruf das Terminal auf und gib einfach JShell ein:

Java JShell

Läuft 😉

Online im Browser

Super praktisch ist auch die Website von https://tryjshell.org. Hier kannst du JShell ganz unkompliziert online ausführen.

JShell Beispiele

Für unser konkretes Code-Beispiel definieren wir eine Variable, prüfen sie mit einer if/ else-Konstruktion und geben die Variable am Ende mit System.out.println() am Bildschirm aus:

Java JShell

Sauber! Auch Schleifen, Klassen-Definitionen, Objekt-Erzeugungen und was sonst noch so ansteht, lässt sich mit der JShell prompt erledigen.

Für Anfänger geeignet?

Auf unserem Discord-Server fragte ein User, ob die JShell für Anfänger zum Java-Lernen geeignet sei. Betrachten wir also die Vor- und Nachteile der JShell und vergleichen sie unter dem Aspekt des "Java Lernens" einmal mit einer vollwertigen Programmierumgebung (IDE).

Was sind also die Vorteile der JShell für Anfänger?

  • Sofortiges Programmieren möglich, ohne vorherige Erstellen von Projekt, Paket, Klasse und Main-Methode.
  • Anweisungen werden mit der Eingabe unmittelbar ausgeführt und das Ergebnis wird sofort sichtbar
  • Reduktion auf den Code, keine Ablenkungen durch die Programmieroberfläche

Weche Nachteile hat JShell für Java-Neulinge?

  • Keine Code-Markierungen, Hervorhebungen und Hilfen
  • Komplexere Programme praktisch unmöglich
  • Keine Einübung in die Arbeit mit Produktivprojekten

Fazit: Für das schnelle Testen und Einüben des Java-Sprachkerns ist die JShell gut geeignet. Es gibt keinen direkteren Weg zum Java-Programmieren. Allerdings ist eine sinnvolle Softwareentwicklung damit nicht möglich.

Für die ersten Berühungspunkte mit dem Java-Sprachkern ist die JShell damit durchaus zu empfehlen.

Es sollte aber bald der Punkt kommen, wo sich der Lernende im Einsatz einer IDE einüben sollte, da diese für die Entwicklung (auch kleiner) produktiver Software-Projekte unabdingbar ist.

Java lernen

text text

PHP Lernen

zur PHP

JavaScript lernen

move nove move

FALCONBYTE.NET

Handmade with 🖤️

© 2018-2023 Stefan E. Heller

Impressum | Datenschutz | Changelog

Falconbyte Youtube Falconbyte GitHub facebook programmieren lernen twitter programmieren lernen discord programmieren lernen