Wie zu verstehen, Java-Anweisungen

Die meisten Syntax Zusammenfassungen geben Sie die Details der einzelnen Aussagen Art formal, esoterische Beschreibungen verwenden. Allerdings geben diese Beispiele jeder Anweisung Geben Sie eine kurze, informelle Beschreibung des Zwecks der Erklärung Art. Diese Beschreibung der Java-Syntax ist bei weitem nicht umfassend, aber man sollte es lesbar und nützlich zu finden sein.

Eine Java-Klasse:

Klasse PreIncrementDemo {}
Was es bedeutet: "Das Zeug zwischen den geschweiften Klammern gehört zu einer Klasse mit dem Namen PreIncrementDemo. Diese Klasse ist ein Entwurf für die Erstellung von Objekten (Instanzen der PreIncrementDemo Klasse)."

Einfuhranmeldungen:

Import java.util.Scanner-import static java.lang.System.out-
Was sie bedeuten: "Wenn ich den Namen verwenden Scanner anderswo in dieser .Java Datei, nehmen Sie es eine Abkürzung sein für java.util.Scanner. Das heißt, nehmen Sie den Namen Scanner repräsentieren die Scanner Klasse, die in der ist java.util Paket.
"Als ich den Namen verwenden, an anderer Stelle in dieser .java-Datei aus, nehmen Sie es eine Abkürzung sein für java.lang.System.out. Das heißt, nehmen Sie den Namen aus repräsentieren die statische aus Feld, das in der ist System Klasse, die sich wiederum in der ist java.lang Paket."

Variablendeklarationen:

int numberOfBunnies = 27-JFrame myFrame-
"Der Name numberOfBunnies speichert ein int Wert (ein ganzzahliger Wert, beispielsweise 42, 0, -289) und der Ausgangswert numberOfBunnies ist 27. Der Name MyFrame beziehen auf ein Objekt aus der erstellten JFrame Klasse. (Das ist, MyFrame beziehen sich auf eine Beispiel des JFrame Klasse. Das JFrame Klasse wird in einem Paket vordeklarierter benannt javax.swing.) "

Zuweisungsanweisungen:

amountInAccount = 50,22-amountInAccount * = 1,05-amountInAccount = amountInAccount + 1000000.00-
"Zu der Variablen amountInAccount Weisen Sie den Wert 50.22. Dann multiplizieren Sie den Wert von amountInAccount von 1,05. Dann fügen Sie 1.000.000,00 auf den Wert von amountInAccount."

Verfahren Erklärung:

int incrementBy (int Menge) {}
"Ich bin die Einführung (das heißt" erklärt ") ein Verfahren namens incrementBy. Das incrementBy Verfahren nimmt, als seine Eingabe (es ist "Parameter") ein int Wert. Innerhalb des Körpers des Verfahrens (das heißt, zwischen den geschweiften Klammern), dass Parameterwert wird von dem Variablennamen Menge bekannt. Die Ausführung der incrementBy Methode gibt eine (möglicherweise unterschiedliche) Wert, ebenfalls vom Typ int."

Methodenaufrufe:

n = incrementBy (6) -System.out.println (incrementBy (10)) -
"Ruf den incrementBy Verfahren (das heißt, führen Sie die Anweisungen im Rumpf der incrementBy Methode) die Methode der Parameter den Wert zu geben von dem Aufruf zurückgegeben den Wert 6. Nehmen Sie an incrementBy, und weisen Sie, dass zurückgegebene Wert der Variablen n.
"Auch, rufen Sie die incrementBy die Methode der Parameter den Wert 10. Dann nehmen Sie den Wert zurück durch die Call-Methode geben zu incrementBy, und Futtermittel, die Wert auf eine andere Methode zurück - Java vordeklarierter System.out.println Verfahren."

Ein Hauptverfahren:

public static void main (String args []) {}
"Beginnen Sie mit dem Java-Programm ausgeführt wird, indem Sie die Anweisungen im Rumpf des Verfahrens ausgeführt wird benannt Main."

Ein Konstruktor Aufruf:

JFrame MyFrame = new JFrame ( "Das ist mein Gestell!") -
"Erstellen Sie ein neues Objekt mit der Definition der JFrame Klasse. (EIN JFrame ist das, was Sie in der Regel ein "Fenster". nennen würde) in der Titelleiste des neuen Objekts, die Wörter angezeigt werden Das ist mein Rahmen! Lassen Sie die Variable MyFrame beziehen sich auf das neue Objekt (die neue Instanz der JFrame Klasse)."

Eine if-Anweisung:

if (Inputnumber == Random) {} else {}
"Wenn die Inputnumber gleich dem Zufallszahl, dann ein Bündel von Aussagen (die Anweisungen innerhalb des ersten Paares von geschweiften Klammern) auszuführen. Aber, wenn die Inputnumber nicht gleich der Zufallszahl, eine andere Reihe von Aussagen (die Anweisungen innerhalb des zweiten Paares von geschweiften Klammern ausführen - die Erklärungen nach dem Wort sonst). "

Eine switch-Anweisung:

Schalter (Vers) {case 1: Break-Fall 2: break-Fall 3: break-default: Break-}
"Wenn der Wert von Vers 1 ist, führen Sie die Anweisungen nach Fall 1: und dann brechen außerhalb des gesamten Schalter Erklärung. Wenn der Wert von Vers 2 ist, führen Sie die Anweisungen nach Fall 2: und dann brechen außerhalb des gesamten Schalter Erklärung. Blah-bla-bla für Vers gleich 3. Wenn aus irgendeinem Grund, ist der Wert der Vers nicht von den Werten 1, 2 oder 3, führen Sie die Anweisungen nach Standard: und dann brechen außerhalb des gesamten Schalter Erklärung."

Eine while-Anweisung:

während (Inputnumber! = Random) {}
"Überprüfen Sie, ob die Inputnumber nicht gleich der ist Zufallszahl. Wenn dem so ist (das heißt, wenn die beiden Zahlen nicht gleich sind) und führen Sie dann die Anweisungen zwischen den geschweiften Klammern. Nachdem Sie die Anweisungen zwischen den geschweiften Klammern ausgeführt wird, dann wiederholen Sie die ganze Sache. (Überprüfen Sie, ob die Zahlen nicht gleich sind, und so weiter). Wenn während einer der Wiederholungen, Sie feststellen, dass Inputnumber! = Random nicht wahr ist (das heißt, finden Sie, dass die Inputnumber ist gleich der ZufallszahlStopp), dann Sachen zu wiederholen und weitermachen auszuführen, was Aussage kommt unmittelbar danach während Anweisung im Code. "

Eine for-Anweisung:

for (int count = 1 Zählung lt; = 10- Zählwert ++) {}
"Beginne mit 1 für den Wert von Graf. Überprüfen Sie, um sicherzustellen, dass Graf ist kleiner als 10. (Natürlich kann in diesem Beispiel, Graf beginnt weniger als 10.) Weil Graf weniger als 10, die Anweisungen in geschweiften Klammern auszuführen. Wenn Sie fertig sind innerhalb der Klammern die Anweisungen ausgeführt werden, führen Sie die zählen ++ Geschäft (dh, fügen Sie 1 auf den Wert von Graf).
"Gehen Sie zurück und überprüfen, um zu sehen, ob Graf noch kleiner als 10 ist (Ja in diesem Beispiel ist, Graf 2 ist jetzt) ​​Weil Graf weniger als 10, die Anweisungen in geschweiften Klammern ausführen, und fügen Sie 1 auf den Wert dann Graf.
"Wenn zu Beginn einer Wiederholung finden Sie, dass Graf lt; = 10 nicht wahr ist, dann stoppen Sachen wiederholen und danach kommt sofort, was Aussage bewegen auszuführen für Anweisung im Code. "

Eine do ... while-Anweisung:

do {} while (antworten! = 'y' Antwort = 'n'!) -
"Anfangs nichts überprüfen. Starten Sie, indem Sie die Anweisungen zwischen den geschweiften Klammern ausgeführt wird, und überprüft dann, ob Antworten nicht gleich 'Y' und Antworten nicht gleich 'N'. (Das heißt, überprüfen, ob zu sehen Antworten ist weder 'Y' noch 'N'.) Ob Antworten ist weder 'Y' noch 'N', wiederholen Sie dann die ganze Sache. (Führen Sie die Anweisungen zwischen den geschweiften Klammern, und dann klicken Sie hier.) Wenn am Ende einer der Wiederholungen, finden Sie, dass die Antworten entweder 'Y' oder 'N', stoppen dann zu wiederholen, und führen Sie die Anweisung unmittelbar danach do # 133-while Erklärung."

Eine Enum-Deklaration:

Enum Zimmer {Ballsaal, Küche, Esszimmer, Wohnzimmer, Flur, Arbeitszimmer, Bibliothek, billiardRoom, Wintergarten} -Zimmer sceneOfTheCrime = Room.study-
"Jede Variable, die deklariert wird der Typ zu sein, Zimmer speichert einen der folgenden Werte: Room.ballroom, Room.kitchen, Room.diningRoom, Room.lounge, und so weiter. In diesem Beispiel ist die Variable Tatort erklärt der Typ sein Zimmer. die Variable Tatort beginnt, den Wert zu speichern Room.study."

Eine für Anweisung erweitert:

für (Zimmer myroom: Room.values ​​()) {}
"Führen Sie die Anweisungen in geschweiften mehrmals Zahnspange - einmal für jedes der Zimmer Enum-Werte. Führen Sie die Anweisungen einmal mit mein Zimmer gleich Room.ballroom. Dann führen Sie die Anweisungen erneut mit mein Zimmer gleich Room.kitchen. Und so weiter."

Erweitern eines bestehenden Klasse:

Klasse FullTimeEmployee erstreckt Mitarbeiter {}
"EIN Vollzeitangestellter ist ein Mitarbeiter nämlich mit bestimmten zusätzlichen Features- beschriebenen Merkmale zwischen den geschweiften Klammern. "
In diesem Beispiel Vollzeitangestellter ist ein Unterklasse (A.k.a. Kind-Klasse) des Mitarbeiter Klasse, und die Mitarbeiter Klasse ist ein Super (A.k.a. Elternklasse) des Vollzeitangestellter Klasse.

Eine throws-Klausel:

Leere doStuff () throws IOException {Scanner diskScanner = new Scanner (neue Datei ( "EmployeeInfo.txt")) -
"Die Ausführung von Code innerhalb der Sachen machen Methode könnte werfen ein IOException."
Wenn Sie versuchen, eine neue Instanz der zu erstellen Datei Klasse, können die Dinge schief gehen. Java besteht darauf, dass Sie die mögliche Katastrophe mit der Ankündigung, dass Ihre Methode kann / darf werfen ein Bestätigungs IOException. Jedes Mal, wenn Sie Code ausführen, kann ein Wurf IOException, Sie müssen die Ausnahme in Ihrem Code zu bestätigen. Eine Ausnahme, die bestätigt werden muss (wie zB IOException) Heißt ein geprüfte Ausnahme.

Constructors:

Klasse Temperatur {private Doppelnummer-private ScaleName Skala öffentlichen Temperatur () {Zahl = 0,0-scale = ScaleName.fahrenheit-} public Temperatur (Doppelnummer, ScaleName Skala) {this.number = Zahl-this.scale = maßstabs}
"Sie können ein erstellen Temperatur Objekt (eine Instanz der Temperatur Klasse) durch den Aufruf neue Temperatur () mit nichts zwischen den Klammern. Sie können auch ein erstellen Temperatur Objekt durch den Aufruf neue Temperatur (70,0, ScaleName.fahrenheit), oder neue Temperatur (0.0, ScaleName.celsius), oder mit einer anderen Zahl und einem anderen Maßstab Namen.
Ein Konstruktor Erklärung sieht aus wie eine Methode Erklärung, sondern ein Name Konstruktor ist der gleiche wie der Name der entsprechenden Klasse und einen Konstruktor Erklärung hat keinen Rückgabetyp (nicht einmal Leere).

Der Aufruf einer übergeordneten Klasse Konstruktor:

Klasse TemperatureNice erstreckt Temperatur {public TemperatureNice () {super () -} public TemperatureNice (double zahl) {super (Anzahl) -}
"Jedes Mal, wenn das Programm ausgeführt wird neue TemperatureNice () (Aufruf der parameter TemperatureNice Konstruktor), haben den Programmaufruf Super(). In diesem Beispiel ruft Super() bedeutet Aufruf neue Temperatur () (Aufruf der parameter Temperatur Konstruktor.)
"Jedes Mal, wenn das Programm ausgeführt wird neu TemperatureNice (70,0) (Aufruf eines Ein-Parameter TemperatureNice Konstruktor), haben den Programmaufruf super (70.0). In diesem Beispiel ruft super (70.0) bedeutet Aufruf neu Temperatur (70,0) (Aufruf eines Ein-Parameter Temperatur Konstruktor.) "

Arbeiten mit Arrays (Teil 1):

int Gäste [] = new int [10] -
"Erstellen Sie eine Variable mit dem Namen Gäste. die Variable Gäste beziehen auf ein Array von int Werte. Machen Platz für eine Reihe von zehn int Werte. Lassen Gäste beziehen sich auf das Array Raum. "

Arbeiten mit Arrays (Teil 2):

for (int roomNum = 0- roomNum lt; 10- roomNum ++) {Gäste [roomNum] = 0-}
"Store 0 in jedem der zehn Gast Array Standorten. "

Arbeiten mit Arrays (Teil 3):

int Kapazitäten [] = {4, 4, 2, 4, 2, 2, 4, 2, 0, 2} -
"Erstellen Sie eine Variable mit dem Namen capacities. die Variable capacities beziehen auf ein Array von int Werte. Stellen Raum für eine Anordnung von int Werte. Speichern der Zahlen 4, 4, 2 (und so weiter) in den Array-Positionen. Lassen capacities beziehen sich auf das Array Raum. "

Arbeiten mit Arrays (Teil 4):

Room-Zimmern [] = new Raum [10] -
"Erstellen Sie eine Variable mit dem Namen Zimmer. Die variablen Räume beziehen sich auf eine Reihe von Zimmer. Stellen Raum für eine Anordnung von Zimmer. Lassen Zimmer beziehen sich auf das Array Raum. "

Arbeiten mit Arrays (Teil 5):

for (int roomNum = 0- roomNum lt; 10- roomNum ++) {Zimmer [roomNum] = new Raum () -}
"Machen Sie Platz für zehn Zimmer Objekte. Machen Sie jedes Element der Zimmer Array beziehen sich auf einer von denen, Zimmer Objekte. "

Mit Generika:

Anordnungsliste Menschen = new Arraylist() -
"Erstellen Sie eine Variable mit dem Namen Menschen. die Variable Menschen beziehen auf eine Sammlung von Streicher (Das heißt, ein Anordnungsliste von Streicher). Machen Sie Platz für eine Anordnungsliste von Streicher. Lassen Menschen beziehen sich auf die Anordnungsliste."

Eine try ... catch-Anweisung:

try {} catch (Number e) {} finally {}
"Versuchen Sie, die Anweisungen innerhalb des ersten Paares von geschweiften Klammern auszuführen. Wenn nichts schief geht (das heißt, wenn die Ausführung werfen keine Ausnahmen), dann umgehen die Fang Klausel (die Anweisungen innerhalb des zweiten Paares von geschweiften Klammern).
"Aber wenn etwas schief geht (das heißt, wenn die Ausführung eine Ausnahme auslöst) springen dann sofort aus der säumige Anweisung der Fang Klausel. Drücken Sie die Daumen und hoffen, dass die beanstandete Aussage warf ein Number. Wenn ja, dann führen Sie die Anweisungen in der Fang Klausel, und dann weiterziehen, um die Anweisungen auszuführen, die nach der kommen Fang Klausel.
"Ach, wenn der säumige Anweisung hat eine Ausnahme, die keine ist Number, dann wieder vorzeitig von der Methode, die Sie gerade ausgeführten sind (die Methode diese enthält versuchen # 133-Fang Erklärung). Rückkehr nach welcher Methode auch immer diese aktuelle Methode aufgerufen, und hoffen, dass der Aufruf der Methode sinnvoll mit dem fiesen Ausnahme umgehen können.
"So oder so (Ausnahme oder keine Ausnahme, vorzeitig oder nicht zurückkehren), führen Sie die Anweisungen innerhalb der endlich Klausel (der dritte Satz von geschweiften Klammern). "

Mit Zugriffsmodifikatoren (Teil 1):

Paket com.allmycode.utilities-public Class First {} class Zweite {}
"Der Code in dieser Datei gehört zu einem Paket mit dem Namen com.allmycode.utilities. Die Klasse Zuerst ist auf jedem Java-Code zur Verfügung. Die Klasse Zweite ist nur für Java-Code, wenn dieser Code auch in der ist com.allmycode.utilities Paket."

Mit Zugriffsmodifikatoren (Teil 2):

Paket com.allmycode.utilities-Klasse Dritte {public amountInAccount = 50,22-int numOfThings = 22-private int Sachen = 10 geschützt int x = 40-
"Der Code in dieser Datei gehört zu einem Paket mit dem Namen com.allmycode.utilities. die Variable amountInAccount ist auf jedem Java-Code zur Verfügung. (Jeder Code kann Java Verweis auf den Namen machen amountInAccount.) Die Variable numOfThings ist nur für Java-Code, wenn dieser Code auch in der ist com.allmycode.utilities Paket. die Variable Sachen ist außerhalb der zu jedem Code nicht verfügbar Dritte Klasse. die Variable x ist nur für Java-Code, wenn dieser Code entweder in der ist com.allmycode.utilities Paket oder dieser Code ist in einer Unterklasse der Dritte Klasse."

Die Implementierung einer Schnittstelle:

Klasse Gameframe erweitert JFrameimplements Action, ItemListener {}
"Ich die Gameframe Programmierer) vereinbaren Stellen (Implementierungen) für alle körperlos Methoden in der erklärt zu schaffen Action und ItemListener Schnittstellen. "

Ein Lambda-Ausdruck:

(Kunde) -> customer.name.equals ( "Burd")
"Rückkehr wahr wenn der Name des Kunden ist "Burd"- Rückkehr falsch Andernfalls."
. CustomerList.stream () Filter ((Kunde) -> customer.name.equals ( "Burd"))
"Nehmen Sie die Objekte in der Kundenliste. Verwendung der Strom Verfahren, diese Objekte zu senden, one-by-one, um ein Filter Verfahren. Das Filter Verfahren wendet die Lambda-Ausdruck für jedes Objekt, bekommen wahr für den Kunden ist, dessen Name "Burd", und falsch für alle anderen Kunden. Als Ergebnis der Filter Methode sendet alle und nur die Kunden, deren Name "Burd" zu welchem ​​Verfahren kommt in der Montagelinie nächste. "

Verfahren Referenz:

Kunden :: isBurd
"Führen Sie die Anweisungen im Rumpf der Kunde Klasse isBurd Verfahren."
Klasse Kunden. {String name-public boolean isBurd () {return name.equals ( "Burd") -} // mehr Code geht hier} customerList.stream () Filter (Customer :: isBurd)
"Nehmen Sie die Objekte in der Kundenliste. Verwendung der Strom Verfahren, diese Objekte zu senden, one-by-one, um ein Filter Verfahren. Das Filter Verfahren gilt Kunde Klasse isBurd Methode für jedes Objekt, bekommen wahr für den Kunden ist, dessen Name "Burd", und falsch für alle anderen Kunden. Als Ergebnis der Filter Methode sendet alle und nur die Kunden, deren Name "Burd" zu welchem ​​Verfahren kommt in der Montagelinie nächste. "

Menü