part 1

Published on
Embed video
Share video
Ask about this video

Scene 1 (0s)

Java Grundlagen Skript zum Kurs der Programmierstarthilfe Fakultät für Ingenieurwissenschaften und Informatik Universität Ulm Jan-Patrick Elsholz und das Programmierstarthilfe-Team 2009.

Scene 2 (44s)

[Audio] Der zweite Teil dieser Präsentation widmet sich den Folien. Wir werden unsere Reise durch die Grundlagen der Programmiersprache Java fortsetzen. Das Skript, das wir Ihnen hier vorstellen, ist ein wertvolles Hilfsmittel für Studenten an der Fakultät für Ingenieurwesen und Informatik an der Universität Ulm. Es wurde speziell für die Programmierstartunterstützung an unserer Universität entwickelt und finanziert durch Studiengebühren. Es richtet sich an alle, insbesondere an Neueinsteiger in der Programmierung, und kann auch unabhängig von den Materialien der Programmierstartunterstützung für Selbststudium verwendet werden. Der Inhalt des Skripts beginnt mit den grundlegenden Konzepten und führt Sie detailliert durch die Programmierkenntnisse, die im ersten Semester eines Informatikstudiums vermittelt werden. Sollten Sie Fehler finden oder Schwierigkeiten mit der Formulierung haben, können Sie uns gerne kontaktieren. Wir sammeln alle Korrekturen und werden sie in zukünftigen Versionen des Skripts berücksichtigen. Sie können uns einfach eine E-Mail an [email protected] senden. Das Skript wurde am 14. Oktober 2010 veröffentlicht und enthält Korrekturen aus dem Wintersemester 2008/2009. Verschiedene Autoren haben an diesem Skript gearbeitet, die wir hier namentlich erwähnen möchten: Guido de Melo war für die Kapitel 1, 2, 4, 5, 6, 7 und 8 zuständig, Benjamin Erb für die Kapitel 8, 9, C und E, Peter Lobner für die Kapitel 7 und 8, Robert Schmitz für die Kapitel 3, 4, D und die Entwicklungsumgebungen, Finn Steglich für die Kapitel 4, 5 und 6, und Juliane Wessalowski hat uns bei der Korrektur unterstützt. Marcus Bombe hat an den Kapiteln 0, 5, 8, A und B gearbeitet und die Syntaxübersicht erstellt. Leonhard Martin hat ebenfalls bei der Korrektur geholfen. Abschließend möchte ich, Jan-Patrick Elsholz, mich für die Korrekturen verantwortlich zeigen. Wir möchten Sie darauf hinweisen, dass dieses Skript unter der Creative Commons Attribution-NonCommercial-ShareAlike 2.0 Lizenz steht. Eine Kopie dieser Lizenz finden Sie unter http://creativecommons.org/licenses/by-nc-sa/2.0/de/ oder Sie können einen Brief an Creative Commons, 543 Howard Street, 5th Floor, San Francisco, California, 94105, USA senden. Das Skript wurde mit dem Satzprogramm PDF-LATEX2ε erstellt..

Scene 3 (3m 25s)

[Audio] Herzlich Willkommen zu unserer Präsentation über die Grundlagen der Programmiersprache Java für Studierende der Fakultät für Ingenieurwesen und Informatik an der Universität Ulm. In diesem Skript werden wir einen Überblick über Java geben und wichtige Informationen für das Programmieren in dieser Sprache vermitteln. Das Inhaltsverzeichnis umfasst Einleitung, häufige Irrtümer, Programmieren, Allgemeines über Java, Editoren, das erste Programm: Hello World, Übersetzen und Ausführen, Übersetzungsfehler und andere Tücken, Kommentieren, Einrücken und Formatieren, Datentypen, Konventionen und Ausgabe, Variablen und Zahlen, Wahrheitswerte, Strings, Der Rest: byte, short, char, long, float, Typecasts, Kontrollstrukturen, Blöcke, if-Anweisung, if mit mehreren Möglichkeiten, switch-Anweisung, Schleifen, for-Schleifen und while-Schleifen. Als nächstes werden wir uns genauer mit den Inhalten des Skripts beschäftigen. Die Einleitung erläutert den Zweck dieser Präsentation und bespricht häufige Irrtümer beim Programmieren. Anschließend folgt eine Einführung in das Programmieren und allgemeine Informationen über Java. Auch verschiedene Editoren, die für das Programmieren in Java genutzt werden können, werden vorgestellt. Der nächste Abschnitt beschäftigt sich mit dem ersten Programm in Java, dem "Hello World". Wir zeigen Ihnen, wie Sie dieses Programm schreiben, übersetzen und ausführen können. Dabei erläutern wir auch mögliche Übersetzungsfehler und andere Schwierigkeiten. Ein wichtiger Teil des Programmierens ist das Kommentieren, Einrücken und Formatieren des Codes. Wir erklären Ihnen die Bedeutung dieser Aspekte und zeigen Ihnen, wie Sie sie richtig anwenden können. Ein weiterer wichtiger Bestandteil des Programmierens sind die Datentypen. Wir stellen Ihnen verschiedene Datentypen vor und erklären ihre Verwendung für die Ausgabe und Speicherung von Daten. Im Abschnitt über Kontrollstrukturen beschäftigen wir uns mit den verschiedenen Möglichkeiten, wie Sie den Ablauf Ihres Programms steuern können. Dazu gehören unter anderem Blöcke, if-Anweisungen und switch-Anweisungen. Zuletzt befassen wir uns mit Schleifen, die es ermöglichen, Code mehrmals auszuführen. Wir zeigen Ihnen sowohl for- als auch while-Schleifen..

Scene 4 (5m 53s)

[Audio] Die Präsentation über die Grundlagen der Programmiersprache Java richtet sich an alle Studierenden der Fakultät für Ingenieurwesen und Informatik an der Universität Ulm. Unser heutiger Vortrag befasst sich mit Abschnitt 4 von insgesamt 18 Folien. In diesem Abschnitt werden wir uns mit dem Thema der Objektorientierung auseinandersetzen. Dabei werden verschiedene Aspekte wie Klassen als Typen, Objekte, Methoden, Gültigkeit und statische Attribute sowie die Unterscheidung zwischen public und private behandelt. Auch das Thema Referenzen wird besprochen. Anschließend werden wir uns mit einfachen abstrakten Datentypen wie Listen und Bäumen befassen. Ein weiterer wichtiger Punkt in Java sind Exceptions, also Ausnahmen, die während der Programmierung auftreten können. Wir werden uns mit verschiedenen Methoden der Fehlerbehandlung beschäftigen. Um Daten einzugeben, werden wir Ihnen einfache Möglichkeiten vorstellen, wie Sie Daten von der Tastatur einlesen können. In den weiteren Konzepten und dem Ausblick werden wir uns mit der objektorientierten Programmierung sowie vertiefenden Informationen zu Datentypen beschäftigen. Außerdem geben wir einen Einblick in die Erstellung von grafischen Benutzeroberflächen und die Thread-Programmierung mit Java. Zum Abschluss werden wir uns mit integrierten Entwicklungsumgebungen beschäftigen und Ihnen die Vor- und Nachteile von IDEs aufzeigen, da eine geeignete Entwicklungsumgebung ein wichtiger Faktor für effizientes Programmieren in Java ist. Vielen Dank für Ihre Aufmerksamkeit und viel Erfolg bei der Arbeit mit Java!.

Scene 5 (7m 34s)

[Audio] Dieses Skript behandelt die Basics der Programmiersprache Java für Studenten der Fakultät für Ingenieurwissenschaften und Informatik an der Universität Ulm. Es vermittelt die Grundlagen, die im ersten Semester der Vorlesung "Praktische Informatik" behandelt werden. Beachten Sie jedoch, dass es keine umfassende Zusammenfassung aller Aspekte von Java ist, sondern lediglich eine kompakte Darstellung der wichtigsten Grundlagen bietet. Die Sprache des Skripts wurde bewusst einfach gehalten, damit auch Anfänger Freude am Programmieren haben können. In der Einleitung werden alle wichtigen Informationen vor der ersten Zeile Java-Code geklärt. Anschließend werden die verschiedenen Kapitel und Unterkapitel behandelt, die aufeinander aufbauen und die Grundlagen von Java vermitteln. Am Ende befindet sich ein Anhang mit nützlichen Hilfsmitteln sowie einem Ausblick auf weiterführende Themen. Dieses Skript wurde speziell für die Programmierstarthilfe an der Universität Ulm erstellt. Obwohl die Java-Grundlagen ursprünglich auf den Aufgabenblättern der Programmierstarthilfe vermittelt wurden, haben wir uns entschieden, Theorie und Aufgaben voneinander zu trennen, um die Lesbarkeit und Benutzbarkeit zu verbessern. Dennoch werden in den Aufgabenblättern der Programmierstarthilfe auf die entsprechenden Kapitel und Unterkapitel dieses Skripts verwiesen. Das Skript kann jedoch auch unabhängig von der Programmierstarthilfe und den Aufgabenblättern verwendet werden. Wir wünschen Ihnen viel Spaß beim Erlernen der Programmiersprache Java..

Scene 6 (9m 11s)

[Audio] Bevor wir uns mit den Inhalten der Präsentation beschäftigen, müssen wir zunächst zwei gängige Missverständnisse aufklären, um falsche Vorstellungen von vornherein auszuräumen. Das erste Missverständnis besteht darin, dass viele glauben, Informatiker und Programmierer seien dasselbe. Oft wird man auf Familienfeiern gefragt, was man als Informatiker so macht, und es wird erwartet, dass man hauptsächlich Computerprogramme schreibt. Dies ist jedoch größtenteils falsch, denn Informatiker und Programmierer gehören zu unterschiedlichen Berufsgruppen. Während Programmierer sich damit beschäftigen, Programme zu schreiben, beschäftigen sich Informatiker mit strukturierten und systematischen Planungen, der Überwachung der Ausführung und der Verifizierung der Ergebnisse im Kontext von Informationen. Sie sind also eher für die Planung und Leitung von Software-Projekten oder die Erstellung von Spezifikationen zuständig. Auch wenn es im späteren Berufsleben für Informatiker oft weniger ums Programmieren geht, ist ein genaues Verständnis der Funktionsweise von Computerprogrammen dennoch unerlässlich. Deshalb werden auch in den Grundlagenvorlesungen der Informatik die Grundprinzipien des Programmierens vermittelt. Das zweite Missverständnis betrifft die Annahme, dass Programmierkenntnisse nicht zwingend für ein Informatikstudium erforderlich sind. Auch wenn man an einer Hochschule Informatik studiert, wird oft behauptet, dass Programmierkenntnisse nicht zwingend nötig sind. Dies mag zwar für den Abschluss eines Studiengangs gelten, ist aber nicht sehr hilfreich, wenn man gerade versucht, eine praktische Prüfung zu bestehen. Denn auch wenn Informatiker später nicht mehr so viel programmieren müssen, ist ein Verständnis für die Funktionsweise von Computerprogrammen in vielen Bereichen unerlässlich. Wir hoffen, dass wir mit diesen Informationen gängige Irrtümer aufklären konnten. Nun können wir mit den eigentlichen Inhalten der Präsentation fortfahren..

Scene 7 (11m 12s)

[Audio] In diesem Teil der Präsentation werden wir uns mit Programmieren im Allgemeinen beschäftigen. Beim Programmieren geht es nicht um das Aussehen eines Autos, sondern um dessen grundlegende Fähigkeiten wie das Fahren und Lenken. Genauso ist es beim Programmieren - es geht um die grundlegenden Fähigkeiten und Prozesse, die ein Computer ausführen kann. Der Prozessor eines Computers kann nur einfache Operationen wie Rechenoperationen oder das Lesen und Schreiben von Daten ausführen. Ein Computerprogramm besteht aus tausenden solcher Operationen, die in Maschinencode gespeichert sind. Dieser Maschinencode besteht aus Nummern, wobei jede Nummer eine bestimmte Operation repräsentiert. Unter Windows werden Dateien mit Maschinencode oft als .exe-Dateien bezeichnet. Natürlich können wir auch selbst Programme in Maschinencode schreiben, indem wir Abkürzungen eingeben, die dann in Nummern des Maschinencodes übersetzt werden. Diese Art von Programmierung nennt man Assemblersprache und es gibt ein Programm namens Assembler, das uns dabei unterstützen kann. Dies ist der grundlegende Prozess des Programmierens - vom Verständnis der Fähigkeiten des Prozessors bis hin zur Erstellung eines Programms durch das Schreiben des Maschinencodes. In den nächsten Teilen der Präsentation werden wir uns genauer mit der Programmiersprache Java und dem Prozess der Erstellung eines Programms beschäftigen..

Scene 8 (12m 38s)

[Audio] Wir betrachten heute die Grundlagen der Programmiersprache Java für unsere Studenten der Fakultät für Ingenieurwissenschaften und Informatik an der Universität Ulm. Auf Folie 8 von insgesamt 18 sehen wir eine Abbildung, die den Prozess der Umwandlung von Quelltext zu einem fertigen Programm verdeutlicht. In dieser Abbildung sehen wir, dass der Quelltext entweder direkt vom Compiler in Maschinencode übersetzt wird oder zuerst in einen Zwischencode übersetzt wird, der dann von einem Interpreter ausgeführt wird. Es ist unsere Aufgabe als Programmierer, einen präzisen Algorithmus zu erstellen, der die Aufgabenstellung in elementare Grundschritte umwandelt. Ein Algorithmus besteht aus einer klar definierten Abfolge von Schritten. Um dies zu verdeutlichen, betrachten wir die Aufgabe "Einkaufen". Wir müssen den Algorithmus "Einkaufswagen holen - Solange noch Artikel auf der Einkaufsliste stehen: Artikel suchen und in Wagen legen, dann den Artikel von der Liste streichen - an der Kasse bezahlen" erstellen. Auch die Handlung "An der Kasse zahlen" kann weiter zerlegt werden in "Waren aufs Band legen - Geldbeutel hervorholen - von der Kassiererin genannte Geldmenge übergeben". Es ist offensichtlich, dass unser Algorithmus von der Definition der elementaren Grundschritte abhängt. Wenn wir eine Aufgabe in Maschinencode lösen müssten, müssten wir sie weiter zerlegen, bis sie nur noch aus einfachen Rechenoperationen besteht. Glücklicherweise verwenden wir jedoch eine Hochsprache, die uns einen Teil dieser Arbeit abnimmt. Wir müssen die Aufgabe nur soweit zerlegen, bis alle Bestandteile entweder als Befehle der Hochsprache oder als bereits programmierte Unteraufgaben vorliegen. Diese Unteraufgaben können sowohl von uns selbst programmiert sein, als auch von der Programmiersprache zur Verfügung gestellt werden. Zum Beispiel bietet eine Hochsprache immer eine einfache Möglichkeit, einen Text auf dem Bildschirm auszugeben. Zusammenfassend lässt sich sagen, dass Programmieren bedeutet, einen Algorithmus zu erstellen, der die Aufgabenstellung in elementare Grundschritte übersetzt und in einer Hochsprache umsetzt..

Scene 9 (14m 58s)

[Audio] Wir haben bereits die grundlegenden Konzepte des Programmierens besprochen und können uns nun dem Studium von Java widmen. Im Vergleich zu C und C++ ist Java eine relativ neue Hochsprache, die jedoch sehr beliebt ist. Es ist wichtig zu erwähnen, dass Java nichts mit JavaScript zu tun hat. Diese beiden Sprachen haben unterschiedliche Anwendungsbereiche und unterscheiden sich stark voneinander. Der Hauptunterschied von Java zu klassischen Hochsprachen liegt in seiner Plattformunabhängigkeit. Ein in Java geschriebenes Programm kann ohne Änderungen auf verschiedenen Betriebssystemen und Prozessorarchitekturen ausgeführt werden. Im Gegensatz dazu kann ein Programm in C++ nicht einfach auf verschiedenen Plattformen ausgeführt werden, da es erst in den Maschinencode der Zielplattform übersetzt werden muss. Um diese Plattformunabhängigkeit zu erreichen, wurde in Java eine Zwischenebene eingeführt. Der Java-Compiler erzeugt keinen Maschinencode, sondern sogenannten Bytecode. Dieser Bytecode ist eine Art universeller Maschinencode, der unabhängig von einem bestimmten Prozessor ist. Allerdings kann er nicht direkt von einem Prozessor ausgeführt werden. Stattdessen wird er von der Java Runtime Environment (JRE) eingelesen und ausgeführt. Diese Runtime Environment ist für jede Plattform spezifisch, aber auf allen Plattformen gleich. Das bedeutet, dass jeder, der ein Java-Programm ausführen möchte, eine solche Runtime Environment benötigt. Die Frage, woher man die Runtime Environment und den Java-Compiler bekommt, wird am Ende dieses Abschnitts beantwortet. Eine weitere wichtige Eigenschaft von Java ist, dass die Entwickler grundlegende Konzepte aus anderen Sprachen wie C++ übernommen haben. Deshalb ist Java auch für diejenigen, die bereits Erfahrung mit anderen Programmiersprachen haben, leichter zu erlernen. Im nächsten Abschnitt werden wir uns mit den Datentypen in Java beschäftigen. Bleiben Sie dran!.

Scene 10 (17m 12s)

[Audio] Heute sprechen wir in unserer Präsentation über die Grundlagen der Programmiersprache Java. Unsere Präsentation richtet sich speziell an die Studierenden der Fakultät für Ingenieur- und Informatikwissenschaften an der Universität Ulm. Wir befinden uns auf Folie Nummer 10 von insgesamt 18 und beschäftigen uns mit dem Thema der Editoren und Entwicklungsumgebungen für Java-Quelltexte. Zunächst betrachten wir einfache Texteditoren. Der einfachste Weg, Java-Quelltexte zu erstellen, ist die Verwendung eines einfachen Texteditors wie zum Beispiel Notepad. Wichtig ist hierbei, dass der Editor die Daten als reinen Text speichert. Programme wie Open Office Writer oder Microsoft Word sind nicht geeignet, da sie zusätzliche Informationen wie Schriftarten und -farben enthalten, die der Java Compiler nicht verarbeiten kann. Zusätzlich ist es wichtig, dass die Dateiendung .java lautet, damit der Compiler sie korrekt interpretieren kann. Es gibt jedoch auch geeignetere Texteditoren, die zum Programmieren verwendet werden können. Diese sollten Zeilennummern anzeigen, was bei der Fehlersuche hilfreich sein kann. Außerdem bieten sie die Funktion des Syntax Highlightings, bei dem die Befehle farblich hervorgehoben werden. Nun wollen wir uns mit den Entwicklungsumgebungen beschäftigen. Hier gibt es verschiedene Möglichkeiten, wie zum Beispiel die Verwendung von einfachen Texteditoren oder speziellen IDEs für Java. Eine IDE ist eine integrierte Entwicklungsumgebung, die neben der einfachen Texteingabe auch zusätzliche Funktionen wie eine integrierte Fehlererkennung und Vorschläge zur Code-Vervollständigung bietet. Für diejenigen, die Linux verwenden, kann das aktuelle JDK entweder von der Website http://java.sun.com heruntergeladen oder über eine Distribution bzw. Paketverwaltung bezogen werden. Mac-Benutzer erhalten das JDK direkt von Apple. Wir empfehlen, das aktuelle JDK herunterzuladen und zu installieren, da es den Compiler für Java enthält. Dies ist wichtig für die Ausführung und das Testen von Java-Quelltexten. Zusammenfassend möchten wir betonen, dass es wichtig ist, einen geeigneten Editor zu verwenden, der die Daten als reinen Text speichert und die richtige Dateiendung hat. Die Verwendung einer Entwicklungsumgebung bietet zusätzliche Funktionen und kann bei der Fehlererkennung helfen..

Scene 11 (19m 44s)

[Audio] Wir sind nun bei Folie elf angelangt und widmen uns unserem ersten Java-Programm. Bevor wir in den Quelltext einsteigen, möchte ich erklären, warum wir das Tippen von Zeilen üben müssen. Die Antwort ist einfach: Übung macht den Meister. Um die Programmiersprache wirklich zu beherrschen, ist regelmäßiges Üben notwendig. Das gilt auch für das Schreiben von Code. Ohne das Tippen selbst haben Sie keine Chance, die Zeilen ohne eine Entwicklungsumgebung zu schreiben oder Fehler zu finden. Es ist vielen schon passiert, dass sie die Zeilen auswendig kannten, sie aber in einer Prüfung nicht aufs Papier bringen konnten, weil sie sie nie selbst getippt hatten. Programmieren ohne Übung funktioniert einfach nicht. Lassen Sie uns nun endlich das erste Java-Programm im Quelltext betrachten, nachdem wir uns mit vielen theoretischen Grundlagen beschäftigt haben. Das folgende Programm gibt den Text "Hello World" aus. Später werden wir genauer auf die Bedeutung der Zeilen eingehen, aber Sie müssen sich jetzt nicht alles merken. Viele Details werden später noch einmal besprochen und Sie können jederzeit zurückblättern. Sehen wir uns den Quelltext an: Insgesamt besteht er aus fünf Zeilen. Sie sehen, dass einige Zeilen eingerückt sind, was jedoch für den Java-Compiler unbedeutend ist. Am Ende werde ich kurz auf das Thema Einrückung eingehen. Grundsätzlich gilt: In der ersten Zeile steht etwas geschrieben und dahinter befindet sich eine geschweifte Klammer. Diese wird in Zeile fünf wieder geschlossen und bildet somit den "Block". Alle Zeilen dazwischen sind mindestens eine Ebene eingerückt, um zu verdeutlichen, dass sie zum inneren Block von Zeile eins bis fünf gehören. Das Gleiche gilt für Zeile drei, die sich im Inneren des Blocks von Zeile zwei bis vier befindet. Aus diesem Grund ist Zeile drei noch einmal eingerückt. Kommen wir nun zum Inhaltlichen: Die erste Zeile (Zeile 1) besagt, dass wir hier eine "Klasse" namens "Hello" deklarieren. Eine Klasse ist sozusagen der Bauplan für ein Objekt..

Scene 12 (21m 48s)

[Audio] Void steht für "ohne Rückgabe". Wenn die Hauptmethode ohne Rückgabe ist, endet das Programm automatisch, sobald die schließende Klammer erreicht wird. Informationen können jedoch beim Programmstart als Parameter übergeben werden. Zum Beispiel wird der Dateiname, wenn wir eine Datei mit dem Programm öffnen, als Parameter an das Programm übergeben. Diese werden von der Runtime Environment in eine Liste von Zeichenketten, auch Strings genannt, geschrieben. Die Eckklammern hinter dem String bedeuten, dass es mehrere Strings sein können. Dies wird im Kapitel über Arrays genauer behandelt. Diese Liste von Zeichenketten wird "args" genannt, was für "Arguments" steht. Wir können auf diese Liste zugreifen, um auf die übergebenen Parameter zuzugreifen, aber für unser Programm ist dies nicht relevant, da wir nur "Hello World" ausgeben möchten. In der dritten Zeile verwenden wir bereits eine Methode aus der mitgelieferten Klassenbibliothek von Java. Wir übergeben die Zeichenkette "Hello World" an die Methode println, welche sie dann in der Textkonsole ausgibt. Da diese Methode nicht in unserer Klasse "Hello" programmiert wurde, müssen wir am Anfang der dritten Zeile "System.out" schreiben, um darauf zuzugreifen. Diese ersten Zeilen sind wichtig für unser Verständnis und sind Teil der Grundlagen der Programmiersprache Java. Im nächsten Kapitel werden wir tiefer in die Sprache eintauchen und verschiedene Konzepte kennenlernen, um komplexere Programme zu schreiben. Bis dahin wünsche ich Ihnen weiterhin viel Erfolg bei der Lernreise durch Java..

Scene 13 (23m 27s)

[Audio] Heute werden wir uns mit dem Thema "Übersetzen und Ausführen" beschäftigen. Die meisten von Ihnen werden später wahrscheinlich die Hilfe von integrierten Entwicklungsumgebungen in Anspruch nehmen, um Java-Programme auszuführen. Dennoch ist es wichtig, die Schritte des Übersetzens und Ausführens manuell durchführen zu können. Zunächst einmal wollen wir uns die Kommandozeile genauer ansehen. In der Kommandozeile gibt man den Befehl, den der Computer ausführen soll, direkt über die Tastatur ein. Sie ist komplett textbasiert und existiert schon lange vor den heutzutage üblichen grafischen Benutzeroberflächen. Unter Windows findet man die Kommandozeile unter Start -> Ausführen -> cmd. Hier befindet man sich immer in einem bestimmten Ordner auf der Festplatte, dessen Name und Ort links vom > angezeigt wird. Durch den Befehl "cd" kann man zwischen verschiedenen Ordnern wechseln. Mit "cd C:\Programme" geht man zum Beispiel in den Ordner Programme und mit "cd zweiundvierzig" in den Unterordner namens zweiundvierzig des aktuellen Ordners. Mit "cd .." gelangt man in den übergeordneten Ordner. Wenn Sie diese Befehle noch nicht kennen, empfehlen wir Ihnen, ein wenig damit zu experimentieren. Mit der Tabulatortaste können Sie außerdem angefangene Datei- und Ordnernamen vervollständigen und so Tipparbeit sparen. Mit "exit" können Sie die Kommandozeile wieder beenden. Unter unixbasierten Betriebssystemen nennt man die Kommandozeile oft "Terminal" oder "Bash". Auch hier gilt: durch das Eingeben von Befehlen können Sie verschiedene Aktionen ausführen. Das war ein kurzer Überblick über die grundlegenden Funktionen der Kommandozeilen unter Windows, Linux und MacOS. Wir hoffen, dass Sie nun ein besseres Verständnis für die Kommandozeile haben und werden uns jetzt dem eigentlichen Thema, dem Übersetzen und Ausführen, widmen..

Scene 14 (25m 20s)

[Audio] "Wir sind nun bei Folie 14 von 18 und befassen uns mit den Begriffen javac und java. Um den Quelltext mit dem Compiler zu übersetzen, muss er zunächst in einer Datei gespeichert werden. Diese Datei muss den gleichen Namen wie die öffentliche Klasse haben und die Dateiendung .java tragen. Wenn der Quelltext mit public class Beispiel { beginnt, muss die Datei Beispiel.java heißen, unter Beachtung der Groß- und Kleinschreibung auch unter Linux. Nach Erstellung dieser Datei, öffnen Sie die Kommandozeile und wechseln in den Ordner, in dem die Datei liegt, mit dem Befehl "cd". Anschließend geben Sie dem Java-Compiler, der den Namen javac trägt, den Befehl "javac Beispiel.java" ein. Bei richtiger Syntax wird für jede Klasse eine .class-Datei erstellt, im Falle von Beispiel also Beispiel.class. Der Compiler gibt nur eine Meldung aus, wenn es Probleme gibt. Bei Quelltexten, die aus mehreren Klassen bestehen, erkennt der Compiler dies automatisch und bearbeitet die Dateien entsprechend. Die durch den Compiler erstellten .class-Dateien enthalten das Programm im Bytecode-Format. Um das Programm auszuführen, benötigen Sie die Java-Laufzeitumgebung, die über den Befehl "java" in der Kommandozeile aufgerufen werden kann. Für die Ausführung von Beispiel.class geben Sie lediglich "java Beispiel" ein und verzichten auf die Dateiendung .class. Wenn Beispiel eine öffentliche Klasse ist und eine main-Methode enthält, wird diese ausgeführt und das Programm abgearbeitet. Entweder endet es von selbst oder es tritt ein Fehler auf. Damit haben Sie nun alle grundlegenden Informationen zur Übersetzung und Ausführung von Java-Quelltexten erhalten. Wir kommen nun zum letzten Abschnitt dieser Präsentation..

Scene 15 (26m 25s)

[Audio] Wir werden uns in diesem Teil der Präsentation mit möglichen Schwierigkeiten bei der Verwendung der Programmiersprache Java beschäftigen. Insbesondere werden wir uns auf Übersetzungsfehler und andere Stolperfallen konzentrieren. Unter Linux können ähnliche Probleme auftreten. Beim Versuch, das Programm mit dem Befehl "javac Hello.java" zu kompilieren, kann es zu Problemen kommen. Der Compiler gibt möglicherweise eine Fehlermeldung aus wie "SYNTAX ERROR, INSERT ";" TO COMPLETE BLOCKSTATEMENTS". Diese Meldung zeigt uns nicht nur an, dass etwas nicht stimmt, sondern auch in welcher Datei und Zeile sich der Fehler befindet. Diese Informationen sind hilfreich, um den Fehler schnell zu identifizieren und zu beheben. Es ist wichtig zu beachten, dass nicht alle Fehlermeldungen des Compilers immer hilfreich sind. Manchmal können kleinere Fehler wie vergessene Semikolons dazu führen, dass weitere Fehlermeldungen erscheinen, die eigentlich nicht existieren. Daher ist es sinnvoll, zuerst mögliche Tippfehler und vergessene Zeichen zu überprüfen, bevor man nach anderen Fehlern sucht. Neben Tippfehlern gibt es auch sogenannte syntaktische Fehler, die der Compiler erkennen und melden kann. Der Compiler überprüft auch den Inhalt unseres Quellcodes. Wenn zum Beispiel versucht wird, eine Methode aufzurufen, die nicht existiert, gibt der Compiler einen Fehler aus. Auch die sogenannte Typsicherheit ist für den Compiler wichtig. Wenn versucht wird, eine Kommazahl in eine Ganzzahl-Variable zu speichern, gibt der Compiler eine Warnung aus, dass möglicherweise Informationen verloren gehen könnten. Zusammenfassend können wir sagen, dass der Compiler uns nicht nur bei offensichtlichen Fehlern hilft, sondern auch bei potenziellen Problemen und Fehlern. Es ist wichtig, die Fehlermeldungen aufmerksam zu lesen und zu verstehen, um unsere Programme erfolgreich zu kompilieren und auszuführen..

Scene 16 (28m 21s)

[Audio] Folie 16 von 18 unserer Präsentation über die Grundlagen der Programmiersprache Java für Studierende der Fakultät für Ingenieurwissenschaften und Informatik an der Universität Ulm beschäftigt sich mit der Kontrolle des Aufrufs des Compilers. Um sicherzustellen, dass der Compiler korrekt aufgerufen wird, muss der komplette Dateiname inklusive der .java Endung angegeben werden. Ein Beispiel dafür wäre "javac Beispiel.java". Beim Starten der class-Dateien hingegen muss die Dateiendung weggelassen werden, z.B. "java Beispiel". Wird stattdessen "java Beispiel.class" eingegeben, wird nicht die Klasse "Beispiel" gestartet, sondern es wird versucht die nicht existente Klasse "class" im nicht existenten Paket "Beispiel" zu starten, was den Fehler "NoClassDefFoundError" verursacht. Außerdem kann es vorkommen, dass der Befehl "java" oder "javac" nicht gefunden wird, wenn auf dem verwendeten Computer keine Java Runtime Environment (JRE) oder kein Java SE Development Kit (JDE) installiert ist. Wenn trotz Installation diese Fehler auftreten, kann es daran liegen, dass der Pfad zu den Java-Dateien nicht in der Path-Umgebungsvariable eingetragen ist. Diese Umgebungsvariable gibt an, in welchen Ordnern die Kommandozeile die Befehle sucht. Um den Pfad unter Windows XP zur Path-Variable hinzuzufügen, wählt man als Benutzer mit Administratorrechten "Start -> Einstellungen -> Systemsteuerung -> System -> Reiter Erweitert -> Umgebungsvariablen" und fügt den Pfad zu "java" oder "javac" mit einem Semikolon getrennt an die bestehende Path-Variable an. Wichtig ist, diese Variable nicht vollständig zu ersetzen. Der Pfad zu "java" oder "javac" ist oft ähnlich wie "C:\Programme\jdk-\bin". Der Eintrag für die Path-Variable sollte dann die Form "bisherige_Einträge;C:\Programme\jdk-\bin" haben. Es ist hilfreich, sich Notizen zu machen, besonders im Quelltext, um die Kontrolle über den Aufruf des Compilers zu behalten. Auch das Kommentieren, Einrücken und Formatieren des Codes ist wichtig für eine übersichtliche und verständliche Programmierung..

Scene 17 (30m 54s)

[Audio] Willkommen zu Folie 17 der Präsentation über Grundlagen der Programmiersprache Java für die Studenten der Fakultät für Ingenieurwissenschaften und Informatik an der Universität Ulm. Heute befassen wir uns mit dem Thema Kommentieren, Einrücken und Formatieren. Es gibt zwei häufige Verwendungszwecke für Kommentare. Zum einen können wir mit "//" Quelltextzeilen auskommentieren, um das Verhalten des Programms zu testen, wenn eine bestimmte Anweisung nicht ausgeführt wird. Auf diese Weise müssen wir die Zeile nicht löschen, sondern können sie für spätere Tests verwenden. Auch ganze Anweisungen können wir mit /* und */ ignorieren. Die wichtigere Anwendung von Kommentaren ist es jedoch, Notizen zu hinterlassen, um zu erklären, wie der Quelltext funktioniert und warum bestimmte Entscheidungen an bestimmten Stellen getroffen wurden. Zu Beginn unterschätzt man oft die Bedeutung von Kommentaren. Es ist wichtig zu bedenken, dass Kommentare nicht nur für andere, sondern vor allem für uns selbst geschrieben werden. Nach ein paar Tagen vergessen wir möglicherweise, wie eine komplexe Methode funktioniert, und sind dann auf unsere eigenen Kommentare angewiesen. Daher ist es wichtig, beim Kommentieren nicht das "Was", sondern das "Warum" zu erklären. Zum Beispiel ist es nicht hilfreich, neben einer Addition als Kommentar "hier werden zwei Variablen addiert" zu schreiben, da dies offensichtlich ist. Viel sinnvoller wäre es, zu beschreiben, warum die Variablen addiert werden, zum Beispiel "die Summe ist die Anzahl aller Einträge in der Liste, weitere Eingaben sind nicht erforderlich". Nur durch solche Kommentare können wir später verstehen, warum eine bestimmte Operation im Code durchgeführt wurde. Es ist besonders hilfreich, aussagekräftige Variablennamen zu verwenden, anstatt abstrakte Bezeichnungen wie a oder b. Dadurch wird der Quelltext verständlicher und leichter nachvollziehbar. Mit diesen Tipps können wir sicherstellen, dass unser Code nicht nur für uns, sondern auch für andere gut lesbar und nachvollziehbar ist..

Scene 18 (33m 2s)

0 Einleitung 18.