Einführung in die Programmierung mit Java



Ähnliche Dokumente
Einführung in die Programmierung mit Java

Einführung in die Programmierung mit Java

Einführung in die Programmierung mit Java

Einführung in die Programmierung mit Java

Einführung in die Programmierung mit Java

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 1. Einführung und Grundbegriffe

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 16/17. Kapitel 1. Einführung und Grundbegriffe

Die Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter

Vorkurs Informatik WiSe 15/16

Teil I. Konzepte imperativer Programmierung in Java

Abschnitt 1: Einführung

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Übungsblatt 3: Algorithmen in Java & Grammatiken

1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien.

Vorlesung Informatik II

Programmierkurs Java

Java Einführung Programmcode

Programmierung. Programme, Compiler, virtuelle Maschinen, Java

Programmieren was ist das genau?

JAVA als erste Programmiersprache Semesterkurs

Willkommen zur Vorlesung. Objektorientierte Programmierung Vertiefung - Java

Einführung in die Informatik Tools

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013

Java Kurs für Anfänger Einheit 5 Methoden

Java: Vererbung. Teil 3: super()

Grundlagen der Programmierung UE

Grundlagen der Programmierung UE

Einführung in Eclipse und Java

PIWIN I. Praktische Informatik für Wirtschaftsmathematiker, Ingenieure und Naturwissenschaftler I. Vorlesung 3 SWS WS 2007/2008

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Erste Schritte in Java

Pakete dienen dazu, die Software eines Projektes in größere inhaltlich zusammengehörige Bereiche mit eigenem Namen einzuteilen (siehe Java API).

Programmieren lernen mit Groovy Allgemeines Programme und ihre Ausführung

Objektorientierte Programmierung

Kapitel 1: Einführung. Was ist Informatik? Begriff und Grundprobleme der Informatik. Abschnitt 1.1 in Küchlin/Weber: Einführung in die Informatik

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

Applications Applets (eingeschränkte Rechte)

JAVA. Ein kurzer Überblick. Thomas Karp

Distributed Computing Group

Einführung zu den Übungen aus Softwareentwicklung 1

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Einführung in die Java- Programmierung

Programmierung 2. Übersetzer: Code-Erzeugung. Sebastian Hack. Klaas Boesche. Sommersemester

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Vorlesung Objektorientierte Softwareentwicklung. Kapitel 0. Java-Überblick

Einführung in die Programmierung für NF. Zuweisungen, main- Methode und Kommentare

Einführung in die Programmierung für NF. Zuweisungen, main- Methode und Kommentare

Vorkurs C++ Programmierung

Berner Fachhochschule Hochschule für Technik und Informatik HTI. Kapitel 1. Einstieg in Java. Dr. Elham Firouzi

Grundbegriffe der Informatik

Java Einführung Packages

3 Objektorientierte Konzepte in Java

Programmieren in Java

II.1.1. Erste Schritte - 1 -

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen. I.2. I.2. Grundlagen von von Programmiersprachen.

Zum Abschluss wird gezeigt, wie aus einem C++ Quell-Programm ein ausführbares Programm erzeugt wird. 1. Installation von NetBeans...

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Große Übung Praktische Informatik 1

Propädeutikum zur Programmierung

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

Programmierkurs Java

Java Virtual Machine (JVM) Bytecode

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Version 0.3. Installation von MinGW und Eclipse CDT

Tutorium Java Ein Überblick. Helge Janicke

Rekursion. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Test-Driven Design: Ein einfaches Beispiel

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Grundlagen von Python

Programmieren I. Administratives / Java Installation. Thomas Vetter, Brian Amberg, Andreas Forster. 21. September 2010 UNIVERSITÄT BASEL

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 22

Java Kurs für Anfänger LMU SS09 Einheit 1 Javaumgebung

Java für Anfänger Teil 1: Intro. Programmierkurs Manfred Jackel

VBA-Programmierung: Zusammenfassung

Innere Klassen in Java

Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007

Quelltextähnlichkeit

Einführung in die Java- Programmierung

Einführung in die Informatik

Grundlagen der Informatik

Robot Karol für Delphi

Problemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests.

Formale Sprachen und Grammatiken

Studieninformationsveranstaltung. Informatik. Institut für Informatik IV Universität Bonn. Tel.: 0228/

Gliederung Grundlagen Schlüsselworte try-catch Fehlerobjekte Fehlerklassen Schlüsselwort finally Schlüsselwort throws selbst erstellte Exceptions

Grundlagen. Kapitel 1

Informatik für Schüler, Foliensatz 21 Objektorientierte Programmierung

Workshop 6. Einführung in die objektorientierte Programmierung. Teil: Java mit BlueJ

SWE1 / Übung 2 ( )

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Coma I. Einleitung. Computer und Algorithmen. Programmiersprachen. Algorithmen versus Programmiersprachen. Literaturhinweise

Übungen zur Vorlesung Einführung in die Informatik Wintersemester 2010/11

Transkript:

Einführung in die Programmierung mit Java Martin Wirsing 2 Ziele Begriffsbildungen: Informatik, Algorithmus, Programm... Warum Java als Programmiersprache verwenden? Ein einfaches Java-Programm erstellen, übersetzen und ausführen Gut dokumentierte Java-Programme erstellen können in Zusammenarbeit mit Michael Barth, Philipp Meier und Gefei Zhang WS04/05 3 4 Informatik Teilgebiete der Informatik Informatik ist ein Kunstwort, das in den 60-ziger Jahren in Frankreich kreiert wurde, entstanden aus Information + Mathematik Praktische Informatik Programmierung und Software-Entwicklung Datenbanksysteme Betriebssysteme und Middleware Technische Informatik Rechenanlagen und Rechnernetze (Hardware) englisch: Computer Science neuerdings auch: Informatics Theoretische Informatik Formale Modelle und Semantik Algorithmen und Komplexität bedeutet Wissenschaft der maschinengestützten Informationsverarbeitung Informatik und Gesellschaft Auswirkungen der Informatik auf die Gesellschaft (Rationalisierung, Automatisierung, Datensicherheit,...)

5 6 Algorithmen und Programme Programme und Software-Entwicklung Algorithmus (nach Al-Khowarizmi, um 800) Allgemeines Verfahren zur Lösung einer Klasse von Problemen, das durch eine eindeutige Vorschrift so genau festgelegt ist, dass man es anwenden kann, ohne es verstanden zu haben. Eigenschaften: Jeder Einzelschritt ist eindeutig festgelegt und berechenbar. Das Verfahren liefert nach endlich vielen Schritten eine Lösung. Beispiele: Modellbau: Montageanleitung Informatik: Sortieralgorithmus Programm Beschreibung von Datenstrukturen und Algorithmen in einer Programmiersprache Software-Entwicklung Systematische Konstruktion von Programmen zur Lösung eines in der realen Welt gestellten Problems Programm Beschreibung von Datenstrukturen und Algorithmen in einer Programmiersprache Entwicklung objektorientierter Programmiersprachen 7 Java 8 1960 Algol 60 Simula 67 1970 Pascal C 1980 Modula 2 Eiffel Smalltalk C++ 1990 Modula3, Oberon Java 2003 Java 1.4 Entwickelt von J. Gosling, u.a. Erste plattform-unabhängige OO-Sprache, insbesondere zur Programmierung von Internet-Applikationen Erste Version 1.0 1995, heute Java 1.4. (neu jetzt 1.5. aber nicht in Vorlesung) Ursprünglicher Name: OAK.

9 10 Aspekte von Java Grober Aufbau eines Java-Programms Objektorientiert: Klassenkonzept, strenge Typisierung Unabhängig von Plattform: Durch Übersetzung in Virtuelle Maschine (JVM) Netzwerkfähig, nebenläufig Sicherheitskonzept Nachteile: Laufzeithandicap durch Interpretation der JVM (aber z.t. ausgeglichen durch Just-in-Time Übersetzung) Vorteile: Verteilte Anwendungen, Web-Anwendungen Rechnerunabhängigkeit von Graphikanwendungen Java-Programm besteht aus Menge von Klassen Eine Klasse besteht aus Attributen ( fields ): Beschreiben Zustand eines Objekts Methoden: Beschreiben die Operationen, die ein Objekt ausführen kann 11 12 Einfaches imperatives Java-Programm Beispiel: Hallo Ein imperatives Java-Programm besteht aus Klassendeklaration mit einer einzigen Methode namens main : public class Hallo public static void main(string[] args) public class <KlassenName> System.out.println( Hallo! ); public static void main(string[] args) <Anweisungen>

13 14 Methodenaufruf Konventionen Methodenaufruf allgemein: Klassennamen beginnen mit großen Buchstaben object.methodname(parameters); Bsp. Hallo Methodennamen und Variablennamen beginnen mit kleinen Buchstaben Bsp. println, out Beispiel: Konstantennamen bestehen NUR aus großen Buchstaben. System.out.println( Hallo! ); Bsp. BLUE Zusammengesetzte Namen werden zusammengeschrieben, jeder (innere) Teilname beginnt mit einem großen Buchstaben Bsp. Klasse HalloWelt, Methoden getname, getmyobject 15 16 Übersetzung und Ausführung von Java- Programmen Übersetzung und Ausführung von Java- Programmen Übersetzung in Bytecode Aus einer Textdatei mit Endung.java erzeugt der Compiler javac eine Datei mit gleichem Namen, aber Endung.class Die Datei mit dem Bytecode wird der JVM übergeben und von der JVM ausgeführt (d.h. interpretiert). Diese enthält den Bytecode für die JVM Hallo.java Hallo.class Hallo.class public class Hallo......... Quellprogramm als Textdatei Hallo.java Compiler javac.exe Bytecode als Datei Hallo.class Bytecode als Datei Hallo.class Java Virtual Machine java.exe Ergebnisausgabe (von Hallo auf Bildschirm)

Übersetzung und Ausführung von Hallo.java (unter Windows) Übersetzung von Hallo.java: C: > javac Hallo.java Interpretation von Hallo.class: C: > java Hallo 17 18 Kommentare in Java The view that documentation is something that is added to a program after it has been commissioned seems to be wrong in principle, and counterproductive in practice. Instead, documentation must be regarded as an integral part of the process of design and coding. C. A. R. Hoare: Hints on Programming Language Design (1973) Gibt auf Bildschirm zurück: Hallo! 19 20 Darstellungen für Kommentare in Java Die Klasse Hallo dokumentiert Durch // bla, bla wird eine Zeile oder ein Rest einer Zeile zum Kommentar. Zur Erzeugung von Kommentaren zu Klassen und Methoden werden die Klammern /** und verwendet. Solche Kommentare werden in den mit dem Befehl javadoc erzeugten Report mit aufgenommen. /** Diese Klasse dient nur zum Anzeigen des Strings "Hallo, Welt! auf den Bildschirm public class HalloDoc /** Die Methode main druckt "Hallo, Welt! public static void main (String[] args) System.out.println("Hallo, Welt!");

21 22 Erzeugung der Dokumentation Spezielle Variablen bei javadoc Mit dem Befehl javadoc HalloDoc.java wird automatisch eine Beschreibung der Klasse HalloDoc erzeugt und in die Datei HalloDoc.html @see für Verweise @author für Namen des Autors @version für die Version @param für die Methodenparameter geschrieben. 23 24 Die Klasse Square ausführlich dokumentiert Eine Testklasse für Square /** Diese Klasse dient zur Berechnung des Quadrats. @author Martin Wirsing @version 1.1 public class Square /** Diese Methode dient nur zur Illustration der Parameterbehandlung durch javadoc. @param value ist ein formaler Parameter vom Typ int @return das Quadrat von value public static int square (int value) /** Diese Klasse dient nur zum Test von Square public class Programm /** Die Methode main druckt einen Testfall von square public static void main (String[] args) int wert = 17; System.out.println("Das Quadrat von " + wert + " ist " + square(wert)); return value*value;

25 26 Erzeugung der Dokumentation Zusammenfassung Mit dem Befehlen javadoc Square.java javadoc Programm.java werden automatisch Beschreibungen der Klassen Programm und Square erzeugt und in die Dateien Square.html und Programm.html geschrieben. Geschichte: Objektorientierte Programmiersprachen seit 1967: Simula OO-Programmierung populär seit Ende der 80er Jahre mit Smalltalk und C++. Heute vor allem C++ und Java; neuerdings auch C# Java OO-Programmiersprache, vor allem zur Programmierung im Internet eingesetzt Java ist plattformunabhängig, interpretierend, unterstützt Sicherheitskonzepte und besitzt eine reichhaltige Klassenbibliothek (API, engl. "Application Programming Interface"). 27 28 Zusammenfassung (2) Literaturhinweise Ein Java-Programm besteht aus einer oder mehreren Klassen. Klassen enthalten Attribute und die Definitionen von Methoden. Eine Methode besteht aus einer Sequenz von Anweisungen, die den Berechnungsablauf festlegen. C. Horstmann. Computing Concepts with Java Essentials. 3rd Edition, Wiley, 2003. H.-P. Gumm, M. Sommer: Einführung in die Informatik. 6. Auflage, Oldenbourg-Verlag, 2004. Jede selbstablaufende Java-Anwendung enthält eine Methode main. Ein Java-Programm wird mit einem Übersetzer in Byte-Code übersetzt, der dann mit einem Interpreter, der JVM, ausgeführt wird. K. Arnold, J. Gosling. The Java Programming Language. Addison-Wesley, 1996. Java-Programme sollten gut dokumentiert werden. Mit javadoc kann automatisch eine übersichtliche Dokumentation erzeugt werden.