Java Tutorial für Anfänger - So lernen Sie Java

Autor: John Stephens
Erstelldatum: 23 Januar 2021
Aktualisierungsdatum: 16 Kann 2024
Anonim
Java Tutorial für Anfänger - So lernen Sie Java - Apps
Java Tutorial für Anfänger - So lernen Sie Java - Apps

Inhalt


  • Android SDK Tutorial für Anfänger
  • So erstellen Sie Android-Apps

Einführung in Java für Anfänger

Java ist nicht nur die offizielle Programmiersprache für die Android-App-Entwicklung (neben Kotlin), sondern wird auch von Google für große Teile der Android-Interna verwendet. Es gibt zwei verschiedene Teile, um Java zum Schreiben einer Android-App zu lernen. Eine ist die Java-Programmiersprache selbst, die andere versteht das Erstellen einer App in Bezug auf die Benutzeroberfläche, das Android-Betriebssystem und das Android Software Development Kit (SDK). In diesem Tutorial werden wir uns mit der Java-Programmiersprache befassen.

Java wurde erstmals Mitte der 1990er Jahre von Sun Microsystems veröffentlicht. Es wurde so konzipiert, dass Programmierer, die C und C ++ bereits kannten, Java leicht erlernen können. In den Jahren 2006 und 2007 veröffentlichte Sun Java als freie und Open-Source-Software unter den Bedingungen der GNU General Public License (GPL). Sun wurde 2009/2010 von Oracle gekauft, und Oracle ist weiterhin Java verpflichtet.


Um Java zu lernen und Java-Programme zu schreiben, müssen Sie den Quellcode kompilieren und in eine ausführbare Datei für die Java-Laufzeit umwandeln. Der normale Weg, dies zu tun, besteht darin, das Java Development Kit zu installieren. Zum Zeitpunkt des Schreibens der aktuellen Java-Version ist Java 8 relativ neu, daher verwendet Android Java 7. Wenn Sie sich bei der Installation des JDK nicht sicher sind, lesen Sie dieses Tutorial zur Installation des Java Software Development Kit. Oracle bietet auch ein JDK 7-Installationshandbuch.

Kotlin vs Java - was ist besser für Sie?

Wenn Sie jedoch noch nicht bereit sind, das JDK zu installieren, und einen schnellen Einstieg in Ihr erstes Java-Programm suchen, empfehle ich compilejava.net. Es ist eine einfache Online-Programmierumgebung, mit der Sie einfache Java-Programme schreiben und ausführen können, ohne das JDK mühsam einrichten zu müssen. Es gibt auch den zusätzlichen Vorteil, dass Sie das JDK nicht wirklich installieren müssen, selbst wenn Sie Android-Apps schreiben, da das neueste OpenJDK mit Android Studio geliefert wird!


Die compilejava.net-Webseite ist in drei Teile unterteilt. Oben steht der Platz zum Schreiben Ihres Java-Codes und unten die Ausgabe aus dem Kompilieren (links) und Ausführen (rechts) dieses Codes. Ab hier gehe ich davon aus, dass Sie compilejava.net verwenden. Für diejenigen, die das JDK installiert haben, ist der Vorgang jedoch nahezu identisch, mit der Ausnahme, dass Sie einen Texteditor auf Ihrem PC und nicht den Editor in der Online-IDE verwenden müssen.

Schneiden Sie den folgenden Code aus und fügen Sie ihn in den Editor ein:

öffentliche Klasse HelloWorld {public static void main (String args) {System.out.println ("Hello, World"); }}

Wenn Sie das JDK verwenden, müssen Sie die Datei als HelloWorld.java speichern. In Java müssen der Dateiname des Quellcodes und der Klassenname identisch sein. In der ersten Codezeile wird eine Klasse namens HelloWorld deklariert, sodass dieser Quellcode in HelloWorld.java gespeichert werden muss. Compilejava.net ist jedoch clever genug, um das herauszufinden, und speichert die Datei automatisch als HelloWorld.java!

Klicken Sie nun auf die Schaltfläche "COMPILE & EXECUTE" am unteren Bildschirmrand.Ihre Belohnung ist der Text "Hallo Welt", der in den unteren rechten Fenstern angezeigt wird. Herzliche Glückwünsche!

Was habe ich gerade gemacht?

Nehmen wir uns also einen Moment Zeit und schauen wir uns an, was gerade passiert ist. Zuerst den Quellcode. Die Datei macht drei Dinge. 1) Es deklariert eine Klasse namens HelloWorld. 2) Es definiert eine Methode (eine Funktion) in der aufgerufenen HelloWorld-Klasse Main. 3) Die Main() Methodenaufrufe System.out.println Text ausgeben.

In Java und in allen objektorientierten Programmiersprachen definiert eine Klasse ein Objekt. Ein Objekt ist ein eigenständiges Objekt, das mit anderen Objekten interagiert. In Android würde ein solches Objekt Elemente in der Benutzeroberfläche, eine Netzwerkverbindung, einige Standortdaten usw. enthalten.

Jedes Java-Programm muss in mindestens einer Klasse eine Methode namens main definieren. Es ist der Einstiegspunkt, an dem das Programm mit der Ausführung beginnt. Im einfachen Beispiel über dem Main() Methode hat nur eine Codezeile, einen Aufruf von System.out.println um „Hallo Welt“ auszugeben. println () ist eine Methode, die zur PrintStream-Klasse gehört und als Teil der System-Klasse enthalten ist. Oracle verfügt über zahlreiche Informationen zur System-Klasse und zur PrintStream-Klasse.

Java ist architekturunabhängig, was bedeutet, dass eine .java-Datei nicht für einen bestimmten Prozessor unter einem bestimmten Betriebssystem kompiliert wird, wie Windows auf einem Intel x86-Chip oder Android auf einem ARM Cortex-A-Prozessor, sondern in Java umgewandelt wird Bytecode. Die Aufgabe der Java Virtual Machine besteht darin, diesen Bytecode auf der jeweiligen Plattform auszuführen.

Wichtige Java-Begriffe erklärt

Variablen

Wenn Sie Computerprogramme schreiben, müssen Sie einige Daten für die vorübergehende Verwendung speichern. In einem Android-Spiel möchten Sie beispielsweise die Punktzahl des aktuellen Spielers speichern. Diese Datenbits werden in Variablen gespeichert - ein Feld, in das Sie einige Daten einfügen und sie später wieder abrufen können. Da Daten in unterschiedlichen Formen vorliegen, muss eine Variable mit einem Typ definiert werden, der Java mitteilt, was gespeichert wird. Einige der primitiven Datentypen von Java umfassen: int (für Integer), doppelt (für Gleitkommazahlen mit doppelter Genauigkeit) und Boolescher Wert (für einen wahren / falschen Wert).

Hier ist ein einfaches Programm, das den Wert einer Variablen festlegt, den Wert auf der Konsole ausgibt, die Variable ändert und ihn dann erneut ausgibt:

öffentliche Klasse VariableTest {public static void main (String args) {int i = 1; System.out.println ("Der Wert von i ist:" + i); i = i + 24; System.out.println ("Der Wert von i ist jetzt:" + i); }}

Klicken Sie auf "COMPILE & EXECUTE". Die Ausgabe des Programms ist:

Der Wert von i ist: 1 Der Wert von i ist jetzt: 25

Wie Sie sehen, definiert das Programm eine Variable mit dem Namen "i" und gibt ihr den Anfangswert 1. Der Wert von "i" wird auf der Konsole ausgegeben. Dann wird i auf den neuen Wert von i + 24 oder 1 + 24 gesetzt, was 25 ist. Der neue Wert wird dann ausgedruckt.

Versuchen Sie, das Programm so zu ändern, dass statt eines "int" ein "double" verwendet wird. Setzen Sie "i" auf 1,3 und erhöhen Sie den Wert um eine weitere Dezimalzahl wie 24,9.

Wenn Sie sich das anschauen println () Methode sehen Sie eine Ganzzahl, die zu einer Zeichenfolge hinzugefügt wird: "Der Wert von i ist:" + i. Was hier tatsächlich passiert, ist, dass Java weiß, dass der erste Teil des Ausdrucks eine Zeichenfolge ist, sodass er den Zeichenfolgenwert für generiert ich, in diesem Fall "1" und verkettet es dann zu der Zeichenfolge, die ergibt: "Der Wert von i ist: 1".

Streicher

Strings sind ein wichtiger Bestandteil jeder Programmiersprache, einschließlich Java. nicht wie int oder Boolescher Wertist eine Zeichenfolge kein primitiver Typ, sondern eine Klasse. Wenn Sie eine Zeichenfolgenvariable erstellen, erstellen Sie tatsächlich ein Zeichenfolgenobjekt (beachten Sie den Großbuchstaben S). Als Objekt hat es bestimmte Eigenschaften wie seinen Wert (die Zeichenkette selbst) und seine Länge. Zeichenfolgen können auf viele verschiedene Arten manipuliert werden, z. B. durch Zerlegen, Verketten, Vergleichen und Durchsuchen.

Hier ist ein Beispielprogramm, das einige einfache Operationen an einem String ausführt:

öffentliche Klasse PlayingWithStrings {public static void main (String args) {String hello = "Hallo, Welt"; System.out.println (hallo); // Füge ein! bis zum ende hallo = hallo + "!"; System.out.println (hallo); // Extrahiere das Wort "Hallo" aus dem String // d. H. Beginnend am Anfang (0) für 5 Zeichen. String justHello = hallo.substring (0,5); System.out.println (justHello); // Füge einige nachgestellte Leerzeichen hinzu und entferne sie dann mit trim () hello = hello + ""; hallo = hallo.trim (); // Gib den String jetzt alle in GROSSBUCHSTABEN und in Kleinbuchstaben aus System.out.println (hello.toUpperCase ()); System.out.println (hallo.toLowerCase ()); }}

Kompilieren Sie es und führen Sie es wie zuvor gezeigt aus.

Dies ist eine spezielle Methode, die als Konstruktor bezeichnet wird. Der Konstruktor wird zum Zeitpunkt der Erstellung des Objekts nur einmal aufgerufen.

Der erste Teil des Programms erstellt ein String-Objekt mit dem Namen "Hallo" und gibt ihm den Wert "Hallo, Welt". Obwohl dies so aussieht, als würden Sie eine Ganzzahl oder einen anderen primitiven Typ deklarieren und zuweisen, ist hier tatsächlich noch viel mehr los. Mit Java können einfachen Operatoren wie = und + einfache Aufgaben zugewiesen werden. Also wirklich String hello = "Hallo, Welt"; ist eigentlich so manche String hallo = neuer String ("Hallo, Welt");Mit anderen Worten, erstellen Sie ein neues Objekt vom Typ "String" und übergeben Sie den Wert "Hello, World" an den Konstruktor. Aber darüber werden wir weiter unten im Abschnitt Objekte sprechen.

Der nächste Teil zeigt, wie Sie Zeichenfolgen verketten können. In diesem Fall wird am Ende der Zeichenfolge ein Ausrufezeichen eingefügt. Da String ein Objekt ist, kann es Methoden haben. String.substring () ist eine Methode, die einen Teil eines Strings zurückgibt. In diesem Fall die ersten 5 Zeichen. String.trim () ist eine andere Methode, die führende und nachfolgende Leerzeichen entfernt. Der letzte Teil des Programms zeigt die String.toUpperCase () und String.toLowerCase () Methoden.

Die Ausgabe des Programms ist:

Hallo Welt Hallo Welt! Hallo hallo welt Hallo Welt!

Weitere Informationen zum String-Objekt finden Sie im String-Lernprogramm von Oracle und in der Java String-Dokumentation.

Schleifen

Wenn es eine Sache gibt, in der ein Computer gut ist, erledigt er sich wiederholende Aufgaben. Um eine sich wiederholende Aufgabe in einer Programmiersprache auszuführen, verwenden Sie ein Konstrukt, das als Schleife bezeichnet wird - etwas, das sich immer wieder wiederholt.

Java hat drei Arten von einfachen Schleifen: die zum Schleife, die während Schleife und die mache währenddessen Schleife. Jeder Schleifentyp folgt der gleichen Grundidee. Sie müssen etwas immer und immer wieder wiederholen, bis eine bestimmte Bedingung erfüllt ist.

Hier ist ein Beispiel, das zeigt, wie die Zahlen 1 bis 10, 11 bis 20 und 21 bis 30 unter Verwendung der drei verschiedenen Arten von Schleifen ausgedruckt werden:

public class Loops {public static void main (String args) {// For-Schleife für (int i = 1; i <= 10; i ++) {System.out.println ("i ist:" + i); } // While-Schleife int j = 11; while (j <= 20) {System.out.println ("j ist:" + j); j ++; } // Do While-Schleife int x = 21; do {System.out.println ("x ist:" + x); x ++; } while (x <= 30); }}

Erstellen Sie eine Datei mit dem Namen Loops.java mit dem obigen Code, kompilieren Sie sie und führen Sie sie wie oben gezeigt aus.

Das zum Schleife als drei Teile. Zuerst die Initialisierung (int i = 1), die nur einmal ausgeführt wird. Im obigen Beispiel wird die Initialisierung verwendet, um eine Ganzzahl zu deklarieren ich und setzen Sie seinen Wert auf 1. Dann kommt der Testausdruck (i <= 10). Dieser Ausdruck wird jedes Mal getestet, wenn die Schleife ausgeführt wird. Wenn das Ergebnis des Tests wahr ist, wird die Schleife erneut durchlaufen. In diesem Beispiel soll geprüft werden, ob i immer noch kleiner oder gleich 10 ist. Nach jeder Iteration wird der dritte Abschnitt, der Iterator, ausgeführt. In diesem Beispiel wird der Wert von erhöht ich einzeln. Beachten Sie, dass i = i + 1 ist das gleiche wie i ++.

Das während Schleife ist ähnlich wie die zum Schleife, es sei denn, sie enthält nicht die Initialisierungsphase und die Iteratorphase. Das bedeutet, dass die Initialisierung separat erfolgen muss, daher die Deklaration int j = 11;. Der Iterator muss auch separat codiert werden. In unserem Beispiel ist es die Linie j ++ welches sich in der Schleife nach dem befindet println ().

EIN mache… während loop ist sehr ähnlich zu a während Schleife mit einem großen Unterschied: Der Test, ob die Schleife fortgesetzt werden soll, befindet sich am Ende der Schleife und nicht am Anfang. Dies bedeutet, dass a mache… während wird garantiert mindestens einmal ausgeführt, aber a während Schleife muss nicht einmal ausgeführt werden, wenn die Bedingungen am Eingang in die Schleife nicht erfüllt sind.

Wie während In diesem Fall muss die Initialisierung außerhalb der Schleife erfolgen. int x = 21; und der Iterator tritt innerhalb der Schleife auf: x ++. Wann x Geht über 30, stoppt die Schleife.

Objekte

Wie ich bereits in diesem Java-Tutorial für Anfänger erwähnt habe, ist Java eine so genannte objektorientierte Programmiersprache (OO). Um Java-Programmierung und Android-Programmierung wirklich zu erlernen, ist es wichtig, die OO-Konzepte zu verstehen.

Auf seiner einfachsten Ebene ist ein Objekt eine Reihe von Methoden (Funktionen), die an einem Datensatz arbeiten. Die Daten und Methoden gehören zum Objekt und arbeiten für das Objekt.

Hier ist der Quellcode für ein sehr einfaches Programm, das eineZähler Objekt:

public class Counter {int count; öffentlicher Zähler () {count = 0; } public void Increment () {count ++; } public int GetCount () {return count; } public static void main (String args) {Zähler myCounter = neuer Zähler (); System.out.println ("mycounter is" + myCounter.GetCount ()); myCounter.Increment (); System.out.println ("mycounter is" + myCounter.GetCount ()); }}

Das Counter-Objekt hat ein Datenelement, die Ganzzahlvariable Anzahl und drei Methoden (außer main): Counter (), Increment () und GetCount (). Wenn Sie die erste Methode für den Moment verlassen, können Sie das sehen Zuwachs() und GetCount () sind sehr einfach. Der erste fügt eine zur internen Variablen hinzu Anzahl und die Sekunde gibt den Wert von zurück Anzahl.

Bisher haben alle von uns deklarierten Methoden damit begonnenöffentliche Leere aber wenn du das merkstGetCount() Methode beginnt mitpublic int. Wir werden mehr darüber redenÖffentlichkeit in einem Moment, aber der Unterschied zwischenLeere undint ist das:Leere gibt an, dass die Methode nichts zurückgibt, da die Methode kein Ergebnis zurückgibt. Aberint teilt uns mit, dass die Methode eine Zahl zurückgibt, insbesondere eine Ganzzahl. Sie können tatsächlich Methoden erstellen, die alle Arten von Daten, einschließlich Objekten, zurückgeben.

Beachten Sie, dass die erste Methode denselben Namen wie die Klasse selbst hat, d. H. Zähler(), und es gibt keinen Rückgabetyp (nicht einmal Leere). Dies ist eine spezielle Methode, die als Konstruktor bezeichnet wird. Der Konstruktor wird zum Zeitpunkt der Erstellung des Objekts nur einmal aufgerufen. Es wird verwendet, um das Objekt mit Standardwerten zu initialisieren und andere erforderliche Initialisierungsaufgaben auszuführen. In diesem Beispiel wird nur festgelegt Anzahl bis Null.

Erbe

Das Tolle an Klassen ist, dass Sie eine allgemeine Klasse für eine abstrakte Idee erstellen und dann bestimmte Klassen erstellen können, die von der ursprünglichen Klasse abgeleitet sind. Sie können beispielsweise eine Klasse mit dem Namen Animal erstellen und daraus eine neue Klasse für ein bestimmtes Tier ableiten, beispielsweise einen Elch.

Hier ist ein Beispiel, ich werde gleich darauf eingehen, was hier vor sich geht. Für dieses Beispiel müssen Sie zwei Dateien erstellen. Animal.java und Elk.java. Hier ist Animal.java:

öffentliche Klasse Animal {int NumberOfLegs; öffentliches Tier (int n) {NumberOfLegs = n; } public int GetNumLegs () {return NumberOfLegs; }}

Normalerweise würden Sie die Animal-Klasse oben in eine Datei mit dem Namen Animal.java und die Elk-Klasse unten in eine Datei mit dem Namen Elk.java einfügen. Wenn Sie jedoch compilejava.net verwenden, können Sie den gesamten Code in das Editorfenster einfügen. Dieser wird beim Kompilieren und Ausführen automatisch in den richtigen Dateien gespeichert.

public class Elk erweitert Animal {int lengthOfAntlers; öffentlicher Elch (int l) {super (4); lengthOfAntlers = l; } public int GetAntlerLength () {return lengthOfAntlers; } public static void main (String-Argumente) {Elk myElk = new Elk (30); System.out.println ("Antler:" + myElk.GetAntlerLength ()); System.out.println ("Legs:" + myElk.GetNumLegs ()); }}

Die Animal-Klasse ist eine sogenannte Superklasse, während die abgeleitete Klasse Elk eine Unterklasse ist, da sie hierarchisch unterhalb der Animal-Klasse liegt. Wenn eine Klasse erweitert wird (d. H. Sie erstellen eine Unterklasse), übernimmt die neue Klasse die Daten und Methoden der Superklasse. Deshalb kann das Programm aufrufen myElk.GetNumLegs () obwohl es Teil der Tierklasse ist. Die neue Elk-Klasse hat zwei Variablen:NumberOfLegs undlengthOfAntlers. Es gibt auch zwei Methoden:GetAntlerLength undGetNumLegs. Wenn wir eine andere Unterklasse erstellt haben, sagen wir Schafwürde es das erbenNumberOfLegs Variable und dieGetNumLegs-Methode.

Beim Entwerfen von Objekten werden Sie feststellen, dass einige Methoden für den Rest des Programms verfügbar gemacht werden sollen, damit sie aufgerufen werden können. Andere Methoden sollten Sie jedoch geheim halten, damit nur das Objekt selbst darauf zugreifen kann. Hier ist das WortÖffentlichkeit kommt ins Spiel. Wir haben alles als erklärtÖffentlichkeit Dies bedeutet, dass die Methode von einer beliebigen Stelle im Code aufgerufen werden kann. Sie können jedoch Methoden als deklarieren Privatgelände oder geschützt, wodurch der Zugriff auf diese Methoden eingeschränkt wird. Die gleichen Zugriffsregeln können auch auf die Variablen des Objekts angewendet werden. Eine ausführlichere Beschreibung würde den Rahmen dieses Lernprogramms sprengen. Wenn Sie jedoch weitere Informationen wünschen, lesen Sie den Artikel Steuern des Zugriffs auf Klassenmitglieder und Deklarieren von Mitgliedsvariablen in der Java-Dokumentation von Oracle.

Erwähnenswert ist auch die Arbeitsweise der Konstrukteure. Der Elk () -Konstruktor initialisiert daslengthOfAntlers Variable, in diesem Fall auf 30, die Nummer, die beim Erstellen des Objekts übergeben wurde. Zuvor wird jedoch der Konstruktor der Superklasse aufgerufen (d. H. Tier ()) unter Verwendung der speziellen Java-NotationSuper.

Über objektorientiertes Programmieren (OOP) kann noch viel mehr gesagt werden, aber dieses Java-Tutorial für Anfänger sollte ausreichen, um Ihnen einen Vorgeschmack zu geben und Ihnen den Einstieg zu erleichtern.

Java Tutorial für Anfänger - Zusammenfassung

Vielen Dank, dass Sie sich dieses Java-Tutorial für Anfänger angesehen haben. Wenn Sie mehr über das Erlernen von Java erfahren möchten, bieten wir Ihnen gerne unseren umfassenden Kurs auf DigitAcademy.com an. Diese umfassende Reihe wird Sie vom absoluten Anfänger bis zum selbstbewussten Profi führen und Sie erhalten außerdem unseren vollständigen Einführungskurs in die Android-App-Entwicklung.

Sie können sich auch Teil 2 dieser Serie ansehen: Java-Tutorial für Anfänger, Teil 2. Es gibt auch viele Online-Tutorials, um Java zu lernen. Hier sind ein paar von Oracle:

Oracle-Tutorials

  • Erste Schritte - Eine Einführung in die Java-Technologie und Lektionen zur Installation und Verwendung von Java-Entwicklungssoftware zum Erstellen eines einfachen Programms.
  • Erlernen der Java-Sprache - Lektionen, in denen die wesentlichen Konzepte und Funktionen der Java-Programmiersprache beschrieben werden.
  • Grundlegende Java-Klassen - Lektionen zu Ausnahmen, grundlegenden Ein- / Ausgaben, Parallelität, regulären Ausdrücken und der Plattformumgebung.

Tutorials von Drittanbietern

Vielleicht möchten Sie sich auch die folgenden Tutorials ansehen:

  • Anleitungen Point - Java Tutorial
  • Einführung in die Programmierung mit Java

(e) Bücher

Für diejenigen unter Ihnen, die ein eBook oder ein gedrucktes Buch über das Erlernen der Java-Programmierung möchten, sollten Sie Folgendes in Betracht ziehen:

  • Java: Ein Leitfaden für Anfänger
  • Mit dem Kopf voran Java

Gute Bücher über Android-Programmierung umfassen auch:

  • Android-Programmierung: Der Big Nerd Ranch Guide
  • Der Anfängerleitfaden zur Android-Spieleentwicklung
  • Java lernen durch Erstellen von Android-Spielen

Java-Ressourcen:

  • So schreiben Sie Ihr erstes Android-Spiel in Java
  • Android Studio Tutorial für Anfänger
    • So installieren Sie Android Studio und starten Ihr erstes Projekt
    • So installieren Sie das Android SDK
  • Lernen Sie Android Studio und die Dateien kennen, aus denen Ihre Apps bestehen
  • Wechseln Sie von Coding Newbie zu Java Genius

Nach Jahren globaler Rechttreitigkeiten haben Apple und Qualcomm alle treitigkeiten beigelegt.Apple hat eine Einigung mit Qualcomm erzielt, und die beiden Unternehmen haben eine Vereinbarung getroffen...

Verizon it derzeit der zweitgrößte Mobilfunkanbieter in den Vereinigten taaten, mit 156,1 Millionen Abonnenten, die ab Juni 2019 Verizon Wirele-Pläne durchetzen (AT & T it derzeit ...

Interessant Auf Der Website