Wenn wir ein Java-Programm betrachten, kann es als eine Sammlung von Objekten definiert werden, die durch gegenseitigen Aufruf ihrer Methoden interagieren. Lassen Sie uns nun kurz verstehen Syntax der Java-Sprache Was bedeuten Klassen-, Objekt-, Methoden- und Instanzvariablen?
Ein Objekt- Objekte haben einen Zustand und ein Verhalten. Zum Beispiel: Ein Hund kann einen Zustand haben – Farbe, Name, sowie Verhalten – nicken, rennen, bellen, fressen. Ein Objekt ist eine Instanz einer Klasse.
Klasse- kann als Muster definiert werden, das das Verhalten eines Objekts beschreibt.
Methode- ist im Grunde Verhalten. Eine Klasse kann mehrere Methoden enthalten. In Methoden werden logisch erfasste Daten manipuliert und alle Aktionen ausgeführt.
Instanzvariablen- Jedes Objekt verfügt über einen eigenen, einzigartigen Satz von Instanzvariablen. Der Zustand eines Objekts wird durch die diesen Instanzvariablen zugewiesenen Werte erstellt.
Das erste Programm und Kennenlernen der Syntax der Sprache
Schauen wir uns einen einfachen Code an, der die Worte „Hallo Welt!“ und die Java-Syntax anzeigt.
Öffentliche Klasse MyFirstJavaProgram ( public static void main(String args) ( /* Dies ist mein erstes Java-Programm. Als Ergebnis der Ausführung wird „Hallo Welt!“ auf dem Bildschirm angezeigt */ System.out.println(“Hallo Welt !“); / / Eine Meldung auf dem Bildschirm anzeigen ) )
- Öffnen Sie Notepad und fügen Sie den obigen Code hinzu.
- Speichern Sie die Datei als „MyFirstJavaProgram.java“. Im Folgenden werden wir uns die Java-Syntax ansehen und herausfinden, warum dieser Name verwendet wird.
- Öffnen Sie ein Eingabeaufforderungsfenster und navigieren Sie zu dem Verzeichnis, in dem die Datei gespeichert wurde. Nehmen wir an, es ist „C:\“.
- Geben Sie „Javac MyFirstJavaProgram.java“ ein und drücken Sie die Eingabetaste, um den Code zu kompilieren. Wenn der Code keinen Fehler enthält, Befehlszeile wird dich dorthin führen nächste Zeile: (Annahme: Die Pfadvariable ist gesetzt).
- Geben Sie nun „java MyFirstJavaProgram“ ein, um das Programm auszuführen.
- Auf dem Fenster wird nun „Hello World!“ gedruckt.
Grundlegende Java-Syntax
Es ist sehr wichtig, die folgenden Punkte in der Syntax zu kennen und zu beachten:
- Berücksichtigung der Groß- und Kleinschreibung – Java unterscheidet zwischen Groß- und Kleinschreibung, was bedeutet, dass die Bezeichner „Hello“ und „hello“ unterschiedliche Bedeutungen haben.
- Name der Klassen – bei allen muss der erste Buchstabe drin sein Großbuchstaben.
- Wenn mehrere Wörter zur Bildung eines Klassennamens verwendet werden, muss der erste Buchstabe jedes inneren Wortes in Großbuchstaben geschrieben sein, z. B. „MyJavaClass“.
- Methodennamen – In der Java-Syntax müssen alle Methodennamen mit einem Kleinbuchstaben beginnen.
- Wenn mehrere Wörter zur Bildung eines Methodennamens verwendet werden, muss der erste Buchstabe jedes inneren Wortes in Großbuchstaben geschrieben sein, z. B. „public void myMethodName()“.
- Name der Programmdatei – der Name der Programmdatei genau übereinstimmen mit dem Klassennamen.
- Wenn Sie eine Datei speichern, müssen Sie diese unter Verwendung des Klassennamens speichern (achten Sie auf die Groß-/Kleinschreibung) und am Ende des Namens beispielsweise „.java“ hinzufügen (wenn die Namen nicht übereinstimmen, wird Ihr Programm nicht kompiliert). , „MyJavaProgram“ ist der Name der Klasse, dann sollte die Datei als „MyJavaProgram.java“ gespeichert werden.
- public static void main(String args) – Die Programmverarbeitung beginnt mit der Main()-Methode, die ein erforderlicher Bestandteil jedes Programms ist.
Bezeichner in Java
Identifikatoren- Namen für Klassen, Variablen und Methoden. Alle Java-Komponenten erfordern Namen.
Es gibt mehrere Regeln in der Java-Syntax, die Sie bezüglich des Bezeichners beachten müssen. Sie sind wie folgt:
- Jeder Bezeichner muss mit „A“ vor „Z“ oder „a“ vor „z“, „$“ oder „_“ beginnen.
- Nach dem ersten Zeichen kann eine beliebige Kombination von Zeichen stehen.
- Das Schlüsselwort kann nicht als Bezeichner verwendet werden.
- Das Wichtigste ist, dass bei der Kennung in Java die Groß-/Kleinschreibung beachtet wird.
- Beispiel für korrekte Schreibweise: Alter, $Gehalt, _Wert, __1_Wert.
- Beispiel für falsche Schreibweise: 123abc, -salary.
Überweisungen
Aufzählungen wurden in Java 5.0 eingeführt. Sie beschränken eine Variable darauf, nur einen von mehreren vordefinierten Werten auszuwählen. Die Werte in dieser aufzählbaren Liste werden aufgerufen Überweisungen.
Durch die Verwendung der Aufzählung in Java können Sie die Anzahl der Fehler in Ihrem Code reduzieren.
Wenn wir beispielsweise Anfragen nach frischem Saft in einem Geschäft prüfen würden, könnten wir die Größe der Saftpackungen auf klein, mittel und groß beschränken. Dadurch ist es möglich, durch den Einsatz einer Enumeration in Java sicherzustellen, dass niemand eine andere Paketgröße als Small, Medium oder Large bestellt.
Enum-Codebeispiel in Java
Klasse FreshJuice ( enum FreshJuiceSize( SMALL, MEDIUM, LARGE ) FreshJuiceSize size; ) public class FreshJuiceTest ( public static void main(String args)( FreshJuice Juice = new FreshJuice(); Juice.size = FreshJuice.FreshJuiceSize.MEDIUM; System.out .println("Size: " + Juice.size); ) )Das resultierende Ergebnis aus dem obigen Beispiel:
Konfektionsgröße M
Notiz: In Java können Aufzählungen entweder unabhängig oder innerhalb einer Klasse deklariert werden. Methoden, Variablen und Konstruktoren können auch innerhalb einer Enumeration definiert werden.
Variablentypen
- Lokale Variablen.
- Klassenvariablen (statisch).
- Instanzvariablen (dynamisch).
Modifikatoren
Wie in anderen Sprachen können Sie in Java Klassen, Methoden usw. mithilfe von Modifikatoren ändern. Modifikatoren in Java sind in zwei Kategorien unterteilt:
- Mit Zugriff: Standard, öffentlich, geschützt, privat.
- Ohne Zugriff: final, abstract, strictfp.
Im nächsten Abschnitt werden wir uns Klassenmodifikatoren, Methodenmodifikatoren und andere genauer ansehen.
Array
In Java ist ein Array ein Objekt, das mehrere Variablen desselben Typs speichert. Das Array selbst ist jedoch ein Objekt. In späteren Kapiteln werden wir uns ansehen, wie man ein Array erstellt und füllt.
JSP-Seiten verfügen über eine Hybridsyntax: eine Kombination aus der Standardsyntax, die der HTML-Spezifikation entspricht, und der JSP-Syntax, die durch die Java Server Pages-Spezifikation definiert ist. Die JSP-Syntax definiert die Regeln zum Schreiben von JSP-Seiten bestehend aus Standard HTML-Tags und JSP-Tags. JSP-Seiten enthalten zusätzlich zu HTML-Tags JSP-Tags der folgenden Kategorien:
JSP-Richtlinien
Richtlinien Bereitstellung globaler Informationen zu spezifischen Anfragen, die an die JSP gesendet werden, und Bereitstellung von Informationen, die in der Übersetzungsphase benötigt werden.Richtlinien werden immer am Anfang der JSP-Seite vor allen anderen Tags platziert, sodass Parser(Analysator) Beim Parsen von Text hat JSP globale Anweisungen ganz am Anfang hervorgehoben. Daher analysiert die JSP-Engine (JSP-Laufzeit) den Code und erstellt aus der JSP ein Servlet. Richtlinien stellen Nachrichten an den JSP-Container dar. Syntax Richtlinien Die JSP sieht folgendermaßen aus:
<%@ директива имяАтрибута="значение" %>Job-Syntax Richtlinien im XML:
- Seite
- taglib (Tag-Bibliothek)
- enthalten
Seitenanweisung
Richtlinie Seite definiert JSP-Seiteneigenschaften, die sich auf den Übersetzer auswirken. Die Reihenfolge der Attribute in einer Direktive Seite spielt keine Rolle. Eine Verletzung der Syntax oder das Vorhandensein nicht erkannter Attribute führt zu einem Übersetzungsfehler. Beispiel einer Direktive Seite Der folgende Code könnte dienen:<%@ page buffer="none" isThreadSafe="yes" errorPage="/error.jsp" %>Diese Richtlinie erklärt dies diese Seite JSP verwendet keine Pufferung, es ist für viele Benutzer möglich, gleichzeitig auf eine bestimmte JSP-Seite zuzugreifen, und es wird eine Fehlerseite aufgerufen error.jsp.Richtlinie Seite kann Seiteninformationen enthalten:<%@ page info = "JSP Sample 1" %>Liste möglicher Direktivenattribute Seite in der Tabelle dargestellt.
Attributname | Bedeutung | Beschreibung |
---|---|---|
Sprache | Linie | Gibt die Sprache an, die in den Skriptlets, Ausdrücken oder anderen enthaltenen Dateien der JSP-Datei verwendet wird, einschließlich des Hauptteils des übersetzten Codes. Der Standardwert ist „java“ |
erweitert | Linie | Gibt die Oberklasse für das generierte Servlet an. Dieses Attribut sollte mit großer Vorsicht verwendet werden, da es möglich ist, dass der Server bereits eine Superklasse verwendet |
importieren | Linie | Definition der zu importierenden Pakete, zum Beispiel: <%@ page import="java.util.* %> |
Sitzung | richtig oder falsch | Bedeutung WAHR(Standard) gibt an, dass es sich um eine vordefinierte Variable handelt Sitzung(Typ HttpSession) muss an eine vorhandene Sitzung gebunden sein, sofern vorhanden, andernfalls wird eine neue Sitzung erstellt und daran gebunden. Bedeutung FALSCH stellt fest, dass keine Sitzungen verwendet werden, und versucht, auf die Variable zuzugreifen Sitzung führt zu einem Fehler beim Übersetzen einer JSP-Seite in ein Servlet |
Puffer | keine oder Puffergröße in KB. | Legt die Puffergröße für den JspWriter-Ausgang fest. Der Standardwert hängt von den Servereinstellungen ab und sollte 8 KB nicht überschreiten. Wenn der Wert ist keiner Die Ausgabe erfolgt direkt an das Objekt |
AutoFlush | richtig oder falsch | Legt fest, ob der Puffer automatisch freigegeben werden soll, wenn er voll ist oder ein Fehler auftritt. Standardwert WAHR |
isThreadSafe | richtig oder falsch | Bedeutung WAHR(Standard) gibt den normalen Modus der Servlet-Ausführung an, bei dem mehrere Anforderungen gleichzeitig mit einer einzelnen Servlet-Instanz verarbeitet werden, basierend auf der Annahme, dass der Autor synchronisierten Zugriff auf die Variablen dieser Instanz hat. Ein Wert falscher Signale, den das Servlet erben soll SingleThreadModel(Single-Threaded-Modell), bei dem sequentielle oder gleichzeitige Anforderungen von separaten Servlet-Instanzen verarbeitet werden |
die Info | Linie | Definiert eine Zeichenfolge von JSP-Seiteninformationen, auf die mit der Methode zugegriffen wird Servlet.getServletInfo() |
Fehlerseite | Linie | Der Attributwert stellt die URL-Seite dar, die angezeigt werden soll, wenn mögliche Fehler Ausnahmen verursachen |
isErrorPage | richtig oder falsch | Signalisiert, ob diese Seite zur Behandlung von Fehlern für andere JSP-Seiten verwendet werden kann. Der Standardwert ist FALSCH |
Inhaltstyp | Linie | Definiert die Codierung für die JSP-Seite und -Antwort sowie den MIME-Typ der JSP-Antwort. Der Standardwert für den Inhaltstyp ist text/html, Kodierungen - ISO-8859-1. Zum Beispiel: contentType="text/html;charset=ISO-8859-1" |
Seitenkodierung | Linie | Definiert die Zeichenkodierung der JSP-Seite. Standard ist Zeichensatz vom Attribut Inhaltstyp, sofern es dort definiert ist. Wenn der Wert Zeichensatz im Attribut Inhaltstyp undefiniert, Wert Seitenkodierung gleich gesetzt ist ISO-8859-1 |
taglib-Direktive
Richtlinie taglib erklärt, dass eine bestimmte JSP-Seite eine Tag-Bibliothek verwendet, identifiziert sie eindeutig mit einem URI und weist ein Tag-Präfix zu, das Aktionen in der Bibliothek ermöglicht. Wenn der Container die Tag-Bibliothek nicht finden kann, tritt ein schwerwiegender Übersetzungsfehler auf. Richtlinie taglib hat die folgende Syntax:<%@ taglib uri="URI der einzuschließenden Tag-Bibliothek"Präfix=" Präfixname„ %> Präfix „ Präfixname" wird beim Zugriff auf eine Bibliothek verwendet. Ein Beispiel für die Verwendung einer Tag-Bibliothek meine Tags: <%@ taglib uri="http://www.taglib/mytags" prefix="customs" %> . . .include-Direktive
Richtlinie enthalten ermöglicht Ihnen das Einfügen von Text oder Code beim Übersetzen einer JSP-Seite in ein Servlet. Direktivensyntax enthalten hat die folgende Form:<%@ include file="Relativer URI der einzuschließenden Seite" %> Direktive enthalten hat ein Attribut - Datei. Es enthält den Text der angegebenen Ressource in der JSP-Datei. Mit dieser Anweisung kann auf jeder JSP-Seite ein Standard-Copyright-Header platziert werden:<%@ include file="copyright.html" %>Der JSP-Container greift auf die Include-Datei zu. Wenn sich die Include-Datei geändert hat, kann der Container die JSP-Seite neu kompilieren. Richtlinie enthalten behandelt eine Ressource, beispielsweise eine JSP-Seite, als statisches Objekt. Der angegebene URI wird normalerweise relativ zur JSP-Seite interpretiert, auf der sich der Link befindet, aber wie bei jedem anderen relativen URI können Sie dem System den Speicherort der interessierenden Ressource relativ zum Home-Verzeichnis des WEB-Servers mitteilen, indem Sie ein „ /" an den Anfang der URI. Der Inhalt der Include-Datei wird als einfacher JSP-Text verarbeitet und kann daher Elemente wie statisches HTML, Skriptelemente, Anweisungen und Aktionen enthalten. Viele Websites verwenden auf jeder Seite eine kleine Navigationsleiste. Aufgrund der Probleme bei der Verwendung von HTML-Frames wird diese Aufgabe häufig dadurch gelöst, dass oben oder in der linken Hälfte der Seite eine kleine Tabelle platziert wird, deren HTML-Code für jede Seite der Site viele Male wiederholt wird. Richtlinie enthalten- Dies ist der natürlichste Weg, dieses Problem zu lösen und dem Entwickler den Albtraum zu ersparen, HTML in jede einzelne Datei zu kopieren. Seit der Richtlinie enthalten verbindet Dateien während der Seitenübersetzung. Nach Änderungen an der Navigationsleiste ist eine erneute Übersetzung aller JSP-Seiten erforderlich, die diese verwenden. Wenn sich die verbundenen Dateien häufig ändern, können Sie die Aktion verwenden jsp:include, die die Datei beim Zugriff auf die JSP-Seite einschließt.JSP-Erklärungen
Erklärungen sollen Variablen und Methoden in einer Skriptsprache definieren, die anschließend in der JSP-Seite verwendet werden. Syntax Erklärungen hat die folgende Form:<%! код Java %> Anzeigen befinden sich im Deklarationsblock und werden im Ausdrucksblock der JSP-Seite aufgerufen. Der Code im Werbeblock ist normalerweise eingeschrieben Java-Sprache, Anwendungsserver können jedoch die Syntax anderer Skripte verwenden. Anzeigen werden manchmal verwendet, um zusätzliche Funktionalität hinzuzufügen, wenn mit dynamischen Daten gearbeitet wird, die aus Eigenschaften von JavaBeans-Komponenten erhalten werden. Beispiele Anzeige sind in der Tabelle dargestellt. Bekanntmachung kann mehrere Zeilen enthalten, wie z. B. im folgenden Code zur Berechnung des Werts einer Funktion Tatsache (int n), die gleich 1 sein muss, wenn n kleiner als 2 ist und n! für einen positiven Wert von n;<%! public static int fact (int n) { if (n Anzeigen keine Ausgabe zur Standardausgabe erzeugen aus. Variablen und Methoden deklariert in Anzeige, werden initialisiert und Scriptlets und anderen zur Verfügung gestellt Anzeige zum Zeitpunkt der Initialisierung der JSP-Seite.JSP-Skriptlets
Skriptlets Dazu gehören verschiedene Codeteile, die in der in der Direktive definierten Skriptsprache geschrieben sind Sprache. Codefragmente müssen den syntaktischen Konstrukten der Sprache entsprechen Skriptlets, also in der Regel die Syntax der Java-Sprache. Skriptlets haben die folgende Syntax:<% текст скриптлета %>Äquivalente Syntax Skript für XML ist:Wenn im Text Skript Es ist notwendig, die Zeichenfolge %> genau als Zeichenkombination und nicht als Tag – Endzeichen – zu verwenden Skript, anstelle der Zeichenfolge %> sollten Sie die folgende Zeichenkombination %\> verwenden.Die JSP-Spezifikation bietet eine einfache und klares Beispiel Skript, wodurch sich der Inhalt der JSP-Seite im Laufe des Tages dynamisch ändern kann.<% if (Calendar.getInstance ().get (Calendar.AM_PM) == Calendar.AM) {%>Guten Morgen<% } else { %>Guten Tag<% } %>Es ist zu beachten, dass der Code darin enthalten ist Skriplet wird wie geschrieben eingefügt, und der gesamte statische HTML-Text (Vorlagentext) davor oder danach Skriplet mit dem Operator umgerechnet drucken. Dies bedeutet, dass Skriptlets nicht unbedingt vollständige Java-Blöcke enthalten müssen und dass offen gelassene Blöcke Auswirkungen auf statischen HTML-Text außerhalb von haben können Skriplet. Skripte haben Zugriff auf dieselben automatisch definierten Variablen wie Ausdrücke. Wenn also beispielsweise Informationen auf einer Seite angezeigt werden müssen, müssen Sie die Variable verwenden aus. <% String queryData = request.getQueryString (); out.println ("Дополнительные данные запроса: " + queryData); %>
JSP-Ausdrücke
Ausdruck in einer JSP-Seite ist ein ausführbarer Ausdruck, der in der in der Deklaration angegebenen Skriptsprache geschrieben ist Sprache(normalerweise Java). Ergebnis Ausdrücke JSP mit einem erforderlichen Typ Zeichenfolge, geht zur Standardausgabe aus unter Verwendung des aktuellen Objekts JspWriter. Wenn das Ergebnis Ausdrücke kann nicht in Typ umgewandelt werden Zeichenfolge, tritt entweder ein Übersetzungsfehler auf, wenn das Problem während der Übersetzungsphase erkannt wurde, oder es wird eine Ausnahme ausgelöst ClassCastException, wenn die Diskrepanz während des Anforderungsausführungsprozesses festgestellt wurde. Ausdruck hat die folgende Syntax: <%= Ausdruckstext %> alternative Syntax für Ausdrücke JSP bei Verwendung von XML:- Anfrage, HttpServletRequest;
- Antwort, HttpServletResponse;
- Sitzung, HttpSession - mit der Anfrage verbunden, falls vorhanden;
- raus, PrintWriter - eine gepufferte Version des JspWriter-Typs zum Senden von Daten an den Client.
muss unbedingt mit dem Namen der Klasse übereinstimmen, deren main()-Methode beim Start der Java-Maschine aufgerufen wird.
int a; ... Aktionen auf Variable a ...; wenn ein) ( ... )
Es ist in Bezug auf die Java-Syntax nicht korrekt und lässt sich nicht kompilieren.
- Bei Verwendung als Konstrukteur - super sollte immer an erster Stelle stehen Operator im Unterklassenkonstruktor.
Darüber hinaus unterstützt es begrenzte Typen, durch Angabe einer Oberklasse für Parameterklassen. Zum Beispiel die Deklaration einer „generischen Klasse“ Klasse CLASS_NAME
Eines der grundlegenden Elemente vieler Programmiersprachen ist Bedingungen . Mit diesen Designs können Sie die Arbeit des Programms abhängig von bestimmten Bedingungen auf einen der Pfade lenken.
Die folgenden bedingten Konstrukte werden in Java verwendet: if..else und switch..case
if/else-Konstrukt
Eine if/else-Anweisung testet die Wahrheit einer bestimmten Bedingung und führt abhängig von den Testergebnissen bestimmten Code aus:
Int num1 = 6; int num2 = 4; if(num1>num2)( System.out.println("Die erste Zahl ist größer als die zweite"); )
Nach Stichwort wenn Bedingung gesetzt ist. Und wenn diese Bedingung erfüllt ist, dann der Code, der weiter im if-Block danach platziert wird Geschweifte Klammern. Die Bedingungen sind der Vorgang des Vergleichs zweier Zahlen.
Da in diesem Fall die erste Zahl größer als die zweite ist, ist der Ausdruck num1 > num2 wahr und gibt true zurück. Folglich wechselt die Steuerung zum Codeblock hinter den geschweiften Klammern und beginnt mit der Ausführung der dort enthaltenen Anweisungen, insbesondere der Methode System.out.println("Die erste Zahl ist größer als die zweite"); . Wenn die erste Zahl kleiner oder gleich der zweiten wäre, würden die Anweisungen im if-Block nicht ausgeführt.
Was aber, wenn wir möchten, dass eine Aktion auch dann ausgeführt wird, wenn eine Bedingung nicht erfüllt ist? In diesem Fall können wir einen else-Block hinzufügen:
Int num1 = 6; int num2 = 4; if(num1>num2)( System.out.println("Die erste Zahl ist größer als die zweite"); ) else( System.out.println("Die erste Zahl ist kleiner als die zweite");
Int num1 = 6; int num2 = 8; if(num1>num2)( System.out.println("Die erste Zahl ist größer als die zweite"); ) else if(num1 Wir können auch mehrere Bedingungen gleichzeitig mit logischen Operatoren verbinden: Int num1 = 8; int num2 = 6; if(num1 > num2 && num1>7)( System.out.println("Die erste Zahl ist größer als die zweite und größer als 7"); ) Hier wird der if-Block ausgeführt, wenn num1 > num2 wahr ist und gleichzeitig num1>7 wahr ist. Design Schaltergehäuseähnelt dem if/else-Konstrukt, da es Ihnen ermöglicht, mehrere Bedingungen gleichzeitig zu verarbeiten: Int num = 8; switch(num)( case 1: System.out.println("the number is 1"); break; case 8: System.out.println("the number is 8"); num++; break; case 9: System. out. println("die Zahl ist 9"); break; Standard: System.out.println("die Zahl ist nicht 1, 8, 9"); ) Nach dem Schlüsselwort switch steht in Klammern der zu vergleichende Ausdruck. Der Wert dieses Ausdrucks wird sequentiell mit den Werten verglichen, die nach dem Falloperator stehen. Und wenn eine Übereinstimmung gefunden wird, wird ein bestimmter Fallblock ausgeführt. Am Ende des Case-Blocks wird eine Break-Anweisung platziert, um die Ausführung anderer Blöcke zu vermeiden. Wenn wir beispielsweise die break-Anweisung im folgenden Fall entfernt hätten: Fall 8: System.out.println("die Zahl ist 8"); num++; Fall 9: System.out.println("die Zahl ist 9"); brechen; Da dann unsere Variable num gleich 8 ist, würde der Blockfall 8 ausgeführt werden, aber da in diesem Block die Variable num um eins erhöht wird, gibt es keine Break-Anweisung, dann würde der Blockfall 9 ausgeführt werden. Wenn wir auch die Situation bewältigen möchten, in der keine Übereinstimmung gefunden wird, können wir wie im obigen Beispiel einen Standardblock hinzufügen. Obwohl der Standardblock optional ist. Ab JDK 7 können Sie zusätzlich zu primitiven Typen auch Zeichenfolgen in einem switch..case-Ausdruck verwenden: Paket firstapp; import java.util.Scanner; öffentliche Klasse FirstApp ( public static void main(String args) ( Scanner in = new Scanner(System.in); System.out.println("Enter Y or N: "); String input= in.nextLine(); switch( input)( case "Y": System.out.println("Sie haben den Buchstaben Y gedrückt"); break; case "N": System.out.println("Sie haben den Buchstaben N gedrückt"); break; default: System .out .println("Sie haben einen unbekannten Buchstaben gedrückt"); ) ) ) Der ternäre Operator hat die folgende Syntax: [erster Operand - Bedingung] ? [zweiter Operand] : [dritter Operand] . Somit sind an dieser Operation drei Operanden beteiligt. Abhängig von der Bedingung gibt der ternäre Operator einen zweiten oder dritten Operanden zurück: Wenn die Bedingung wahr ist, wird der zweite Operand zurückgegeben; Wenn die Bedingung falsch ist, dann die dritte. Zum Beispiel: Int x=3; int y=2; int z = x Hier ist das Ergebnis der ternären Operation die Variable z. Zunächst wird die Bedingung x überprüft Stanislaw Gornakow Um eine Fremdsprache sprechen und lesen zu können, müssen Sie das Alphabet und die Grammatik dieser Sprache lernen. Ein ähnlicher Zustand ist beim Studium von Programmiersprachen zu beobachten, mit dem einzigen Unterschied, dass dieser Prozess meiner Meinung nach etwas einfacher ist. Bevor Sie jedoch mit dem Schreiben des Quellcodes des Programms beginnen, müssen Sie zunächst das Ihnen gestellte Problem in einer für Sie geeigneten Form lösen. Erstellen wir eine bestimmte Klasse, die beispielsweise für ein Telefon verantwortlich ist und nur über zwei Methoden verfügt: das Ein- und Ausschalten dieses Telefons. Da wir derzeit die Syntax der Java-Sprache nicht kennen, werden wir die Phone-Klasse in einer abstrakten Sprache schreiben. Klasse Phone (Methode Enable() (// Operationen zum Einschalten des Telefons) Methode Disable (// Operationen zum Ausschalten des Telefons)) Die Phone-Klasse könnte in etwa so aussehen. Beachten Sie, dass geschweifte Klammern den Anfang und das Ende des Hauptteils einer Klasse, Methode bzw. einer beliebigen Datensequenz angeben. Das heißt, Klammern geben die Zugehörigkeit zu einer Methode oder Klasse an. Für jede öffnende Klammer muss es eine schließende Klammer geben. Um Verwirrung zu vermeiden, werden sie normalerweise auf derselben Ebene im Code platziert. Schreiben wir nun dieselbe Klasse nur in Java. Klasse Telefon ( void on() ( // Methodenkörper on() ) void off() ( // Methodenkörper off() ) ) Das Schlüsselwort class in der Java-Sprache deklariert eine Klasse, gefolgt vom Namen der Klasse selbst. In unserem Fall ist das Telefon. Noch ein paar Worte zum Aufnahmeregister. In fast allen Programmiersprachen ist es wichtig, Namen in dem Register zu speichern, in dem sie geschrieben wurden. Wenn Sie „Telefon“ geschrieben haben, führt die Schreibweise „telefon“ oder „TELefoN“ beim Kompilieren zu einem Fehler. Wie wir anfangs geschrieben haben, sollten wir auch weiterhin so schreiben. Reservierte Schlüsselwörter oder Schlüsselwörter werden in ihrer eigenen spezifischen Schreibweise geschrieben und können nicht durch Benennung für Methoden, Klassen, Objekte usw. verwendet werden. Leerzeichen zwischen Wörtern spielen keine Rolle, da der Compiler sie einfach ignoriert, sie sind jedoch wichtig für die Lesbarkeit des Codes. Im Körper der Telefon-Klasse gibt es zwei Methoden: on() – schaltet das Telefon ein und off() – Methode – schaltet das Telefon aus. Beide Methoden haben ihre eigenen Körper und sollten theoretisch einen Quellcode enthalten, der die notwendigen Aktionen beider Methoden beschreibt. Für uns spielt es jetzt keine Rolle, wie diese Methoden implementiert werden, die Hauptsache ist die Syntax der Java-Sprache. Beide Methoden verfügen über on()-Klammern, in die Parameter geschrieben werden können, beispielsweise on(int time) oder on(int time, int time1). Mit Hilfe von Parametern entsteht eine Art Verbindung zwischen Methoden und der Außenwelt. Die Methode on(int time) soll einen Zeitparameter annehmen. Wofür ist das? Sie möchten beispielsweise, dass sich Ihr Telefon zu einer bestimmten Zeit einschaltet. Dann wird der ganzzahlige Wert im Zeitparameter an den Hauptteil der Methode übergeben und basierend auf den empfangenen Daten wird das Telefon eingeschaltet. Wenn die Klammern leer sind, akzeptiert die Methode keine Parameter. Kommentare In der Telefon-Klasse gibt es in den Körpern beider Methoden nach zwei Schrägstrichen einen Eintrag: //. Dieser Eintrag bezeichnet Kommentare, die vom Compiler ignoriert werden, aber für die Lesbarkeit des Codes erforderlich sind. Je mehr Informationen Sie beim Schreiben des Programms kommentieren, desto wahrscheinlicher ist es, dass Sie sich in einem Jahr daran erinnern, woran Sie die ganze Zeit gearbeitet haben. Kommentare in Java können von drei Typen sein: //, /*…*/ und /**…*/. Mit dem //-Operator geschriebene Kommentare müssen in einer Zeile stehen: // Eine Linie!!! Fehler! Sie können es nicht in die zweite Zeile einschließen! // Erste Zeile // Zweite Zeile // ... // Letzte Zeile Kommentare mit den Operatoren /*…*/ können sich über mehrere Zeilen erstrecken. Geben Sie am Anfang Ihres Kommentars /* ein und am Ende, wenn Sie mit dem Kommentieren des Codes fertig sind, den Operator */. Der letzte Kommentartyp /**…*/ wird bei der Dokumentation von Code verwendet und kann sich ebenfalls auf beliebig vielen Zeilen befinden. Java-Datentypen Um einen beliebigen Wert festzulegen, verfügt Java über Datentypen. In der Telefonklasse haben wir zwei Methoden erstellt. Beide Methoden hatten keine Parameter, aber als das Beispiel der Methode on(int time) mit einem Zeitparameter gegeben wurde, ging es darum, der Methode einen Wert zu übergeben. Dieser Wert gab den Zeitpunkt an, zu dem sich das Telefon angeblich einschalten sollte. Der int-Spezifizierer bestimmt den Typ des Zeitwerts. In Java 2 ME gibt es sechs Datentypen. Byte – kleiner ganzzahliger Wert von –128 bis 128; Um einen notwendigen Wert zu deklarieren, verwenden Sie den folgenden Eintrag: Int-Zeit; lange BigTime; char-Wort; Der Semikolon-Operator ist nach Eingaben erforderlich und wird am Ende der Zeile platziert. Sie können mehrere Deklarationen desselben Typs durch Kommas getrennt kombinieren: Mt Zeit, Zeit1, Zeit2; Jetzt verbessern wir unsere Telefon-Klasse, indem wir ihr einige Werte hinzufügen. Wir brauchen die Methoden on() und off() nicht mehr; fügen wir neue Methoden hinzu, die bestimmte Probleme tatsächlich lösen können. Klasse Telefon ( //S – Anzeigebereich //w – Anzeigebreite //h – Anzeigehöhe int w, h, S; //Methode, die den Anzeigebereich berechnet void Area() ( S = w*h; ) ) Wir haben also drei Variablen S, w und h, die jeweils für die Fläche, Breite und Höhe der Anzeige in Pixel verantwortlich sind. Die Area()-Methode berechnet die Fläche des Telefonbildschirms in Pixel. Die Bedienung ist nutzlos, aber sehr anschaulich und leicht verständlich. Der Körper der Area()-Methode hat sich gefunden und hat die Form S = w*h. Bei dieser Methode multiplizieren wir einfach die Breite mit der Höhe und weisen das Ergebnis zu oder speichern es in der Variablen S. Diese Variable enthält die Werte des Anzeigebereichs dieses Telefons . Jetzt sind wir den Java-Sprachoperatoren nahe gekommen, mit denen Sie alle Arten von Operationen ausführen können und über die wir im nächsten Teil dieser Artikelserie sprechen werden.Schalterbau
Ternärer Betrieb
short – kurzer ganzzahliger Wert im Bereich von –32768 bis 32767;
int – enthält einen beliebigen ganzzahligen Wert von –2147483648 bis 2147483647;
long – sehr großer ganzzahliger Wert, von –922337203685475808 bis 9223372036854775807;
char ist eine Unicode-Zeichenkonstante. Der Bereich dieses Formats reicht von 0 bis 65536, was 256 Zeichen entspricht. Jedes Zeichen dieses Typs muss in einfache Anführungszeichen geschrieben werden, zum Beispiel: 'G';
boolean ist ein logischer Typ, der nur zwei Werte hat: false und true. Dieser Typ wird häufig in Schleifen verwendet, worauf später noch eingegangen wird. Die Bedeutung ist ganz einfach: Wenn man Geld in der Tasche hat, soll es wahr sein, und wenn nicht, dann ist es falsch. Wenn wir also Geld haben, gehen wir in den Laden, um Brot oder Bier zu holen (unterstreichen Sie, was zutrifft), wenn wir kein Geld haben, bleiben wir zu Hause. Das heißt, dies ist ein logischer Wert, der zur Auswahl weiterer Aktionen Ihres Programms beiträgt.