Einführung in Java. Ausgewählte Quellen zu Java

Ähnliche Dokumente
Vorkurs Informatik WiSe 17/18

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Einstieg in die Informatik mit Java

Einführung in die Programmierung 1

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Java - Programmierung - Prozedurale Programmierung 1

Welche Informatik-Kenntnisse bringen Sie mit?

Einführung in C. EDV1-04C-Einführung 1

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

Java I Vorlesung Imperatives Programmieren

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

Java Einführung Programmcode

Primitive Datentypen

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

System.out.println("TEXT");

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

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

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

Vorkurs Informatik WiSe 15/16

Vorlesung Informatik II

Intensivübung zu Algorithmen und Datenstrukturen

Informatik I - Einstiegskurs

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein

II.1.1. Erste Schritte - 1 -

Programmieren I + II Regeln der Code-Formatierung

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.

Wo sind wir? Übersicht lexikale Struktur von Java

Variablen. int Flugzeug. float. I write code Hund. String. long. Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Programmieren I + II Regeln der Code-Formatierung

Javakurs für Anfänger

3. Anweisungen und Kontrollstrukturen

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

II.1.1. Erste Schritte - 1 -

Java: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

Einführung in die Informatik

Klausur Grundlagen der Programmierung

Unterlagen. CPP-Uebungen-08/

Motivation und Überblick

Die Programmiersprache C Eine Einführung

Objektorientierte Programmierung OOP Programmieren mit Java

2 Eine einfache Programmiersprache

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

5.1 Mehr Basistypen. (Wie viele Werte kann man mit n Bit darstellen?)

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7.

Die einfachsten Anweisungen

Welcome to java. einfach objektorientiert verteilt interpretierend robust secure architekturneutral portabel schnell parallel(multitheded)

Werkzeuge zur Programmentwicklung

Vorlesung Programmieren

Ein erstes Java-Programm

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen

Einführung in die Programmierung WS 2009/10. Übungsblatt 5: Typen, Variablen und einfache Methoden in Java

Empfehlenswerte Literatur

Einführung in die Programmierung für NF. Algorithmen, Datentypen und Syntax

Algorithmen zur Datenanalyse in C++

Ausnahmebehandlung in Java

Wie rechnet ein Rechner?

Programmierpraktikum

JAVA als erste Programmiersprache Semesterkurs

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

Tag 5. Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme)

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Aufgabenblatt 1: - Präsenzübung für die Übungen Do Mi Ausgabe Mi

Beispiel: Temperaturumwandlung. Imperative Programmierung. Schwerpunkte. 3. Grundlegende Sprachkonstruktionen imperativer Programme

Einführung in den Einsatz von Objekt-Orientierung mit C++ I

Klausur Fachprüfung Wirtschaftsinformatik. Name:

Übungen zu Programmieren - Code-Formatierung -

Vorlesung Programmieren

Fragenkatalog ESOP WS 16/17

Java Einführung Methoden. Kapitel 6

Elementare Konzepte von

5 Grundlagen der Java-Syntax

Praktikum zu Einführung in die Informatik für LogWings und WiMas Wintersemester 2013/14

Javakurs für Anfänger

Remote Method Invocation

5.4 Klassen und Objekte

Übungen zur Vorlesung Wissenschaftliches Rechnen I

Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen

Grundlagen der Programmierung Teil1 Einheit III Okt. 2009

EINFÜHRUNG IN DIE PROGRAMMIERUNG

Einführung in die C-Programmierung

Java: Eine kurze Einführung an Beispielen

Vorlesung Programmieren

Grundzüge der Wirtschaftsinformatik WS 2002/03. Wiederholung Java. Programmierzyklus. Heiko Rossnagel Problem

Schwerpunkte. 10. Felder (Arrays) Grundprinzip von Arrays. Klassifikation von Typen in Programmiersprachen

RO-Tutorien 3 / 6 / 12

Grundlagen der Programmierung Teil1 Einheit III Okt. 2010

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

Klassenvariablen, Klassenmethoden

Funktionales C++ zum Ersten

Einführung in die Programmierung I. 8. Prozedurale Konzepte in Java, Teil1. Stefan Zimmer

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

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

Grundlagen der Programmierung Prof. H. Mössenböck. 2. Einfache Programme

Transkript:

Einführung in Java Wesentliche Eigenschaften und Merkmale der Programmiersprache Java Prof. Dr. Stefan Böttcher Universität Paderborn im Rahmen der Vorlesung: Webbasierte Informationssysteme SS 2004 Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/1 Ausgewählte Quellen zu Java Java gibt es kostenlos von Sun unter http://java.sun.com/j2se/1.4.2/downloads/index.html Online-Dokumentation zu Java ebenfalls unter http://java.sun.com/j2se/1.4.2/docs/index.html empfohlenes Einführungsbuch zu Java: Bell / Parr: Java für Studenten, Pearson 2003. (es tut aber auch fast jedes andere Einführungsbuch zu Java) Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/2 1

Anforderungen aus dem Software-Engineering (1) Praktischer Einsatz von Software : portabel auf andere Betriebssysteme/... korrekt / fehlerfrei ( z.b. keine Speicherfehler ) robust Ausnahme-Behandlung am Ort sicher Vor Java keine durchgängige Technologie dafür Usability-Anforderungen : effizient leicht verständlich Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/3 Anforderungen aus dem Software-Engineering (2) Ziel: wirtschaftliche Software-Entwicklung wiederverwendbar wartbar in verschiedenen Anwendungen anpaßbar z.b. an Sprachen, Geräte,... erweiterbar z.b. um zusätzliche Funktionalität lesbar im Team entwickelbar Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/4 2

Anforderungen durch das Internet (1) WWW-Zugriff, Unterstützung von URLs Zugriff auf entfernte Rechner, HTTP-Unterstützung Client-/Server-Anwendungen Flexible Programmierung von Clients (durch Applets) Sicherheitsstandards für Applets (Sandbox) Unterschiedliche Grade von Vertrauenswürdigkeit Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/5 Anforderungen durch das Internet (2) Client-/Server-Anwendungen Interaktive Anwendungen und Sitzungen (Session-Konzept) verteilbare Anwendungen Transparenz des Ortes (entfernter Methoden-Aufruf) Flexible Lastverteilung zwischen Client und Server Effiziente Programmierung von Servern Sicherheit für den Server Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/6 3

Java-Applikationen (Programme) ( = eigenständig, ohne einen Browser ausführbare Programme ) class Kunde public static void main( String[ ] args ) String ausgabe = Herzlich willkommen in unserem Internet-Shop ; System.out.println( ausgabe ); //... weitere Anweisungen Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/7 Programme übersetzen und ausführen Kunde.java Java-Programm Java-Compiler Kunde.class Java-Byte-Code Eingabe Byte-Code-Interpreter beliebige Zielmaschine Ausgabe Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/8 4

Programme übersetzen und ausführen Bei Java-Programmen in der DOS-Box: C:\java> javac Kunde.java erzeugt Kunde.class erfordert, dass der Java-Compiler im Pfad PATH enthalten ist, z.b. durch C:\java> SET PATH = C:\j2sdk1.4.0_01\bin C:\java> java Kunde startet Kunde.class erfordert, dass die Java-Bibliothek(en) und das aktuelle Verzeichnis im Klassenpfad CLASSPATH enthalten sind, z.b. durch C:\java> SET CLASSPATH =.;C:\j2sdk1.4.0_01\lib\dt.jar;C:\j2sdk1.4.0_01\lib\tools.jar Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/9 Portabilität von Java Einheitliche virtuelle Maschine (Interpreter) für alle Zielmaschinen ( statt Maschinen-Code ) Einheitliche Datentypen (anders als in C/C++), z.b. immer 32 Bit für Integerzahlen (int) ==> Portabilität: Byte-Code: Betriebssystem-übergreifend lauffähige Programme Write once run everywhere Applets sind über das Internet in jeden Java-fähigen Browser ladbar. Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/10 5

Elementare Datentypen in Java Für ganze Zahlen: - byte 8 Bit -128,..., 0,..., 128 Initialwert: 0 - short 16 Bit -32768,..., 0,..., 32767 Initialwert: 0 - int 32 Bit -2 31,..., 0,..., 2 31-1 Initialwert: 0 - long 64 Bit -2 63,..., 0,..., 2 63-1 (über 10 18 ) Initialwert: 0 Für Kommazahlen: - float 32 Bit (über 10 308 ) Initialwert: 0.0 - double 64 Bit (über 10 308 ) Initialwert: 0.0 Für logische Werte - boolean false, true Für Zeichen - char 16 Bit Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/11 Internationalität von Java Internationaler Zeichensatz Unicode statt Bytes für Zeichen inklusive Umlaute: deutsche, skandinavische,..., japanische, chinesische Sonderzeichen,... C/C++ 8 Bit ==> 256 Zeichen Java 16 Bit ==> verbraucht doppelt soviel Speicherplatz, aber bietet 256 mal soviele Zeichen zur Auswahl Lokale Umgebungen (landesspezifisch) ==> Portabilität von Anwendungen in andere Staaten/Sprachen Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/12 6

Operatoren in Java Rechenoperatoren: +, -, *, /,... Vergleichsoperatoren: <, >, ==,!=, >=, <= logische Operatoren: && (und), (oder),! (nicht) Zuweisungsoperatoren: =, +=,... z.b. x+=4 Kurzform für x=x+4 Typumwandlung, z.b. x = ( int ) 3.14 ; und ein paar weitere Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/13 Kontrollstrukturen in Java if ( Bedingung ) Anweisung1 ;... ; AnweisungN ; else Anweisung ;... for ( InitialisierungsAnweisung ; Bedingung ; SchrittAnweisung ) Anweisung ;... while ( Bedingung ) Anweisung ;... do Anweisung ;... while ( Bedingung ) ; und ein paar weitere ( switch, break, continue, return ) Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/14 7

try-anweisung und Ausnahmen try // Anweisungen, die (höchstens) 1x ausgeführt werden. // Falls eine Ausnahme auftritt // (Division durch 0, Datei (Datenbank,Klasse) nicht da,...), // wird der try-block vorzeigt beendet: Sprung zu catch catch ( Exception e ) // fange Ausnahme auf System.out.println( e.message() ) ; // Ausnahme ausgeben Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/15 Funktionen in Java public static void main( String[ ] args ) // Anweisungen der Funktion ähnlich wie in anderen Sprachen (z.b. C/C++) können ohne (void) oder mit Ergebnis (int/double/...) arbeiten 2 Arten: normale Funktionen (static) und Methoden (nicht static) Wo eine Anweisung stehen darf, darf auch ein Funktionsaufruf stehen. Wo ein Wert stehen darf, darf auch F.-Aufruf mit Ergebnis stehen. Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/16 8

Alles Klasse jede Funktionen steht in einer Klasse Klassen bieten diese Funktionen an (liefern eine Implementierung) jede Variable ist in einer Funktion oder einer Klasse definiert ( es gibt keine globalen Variablen, Klassen verstecken Variablen ) class Kasse int geld_in_der_kasse ; void bezahlen( int betrag ) // Implementierung der Funktion(Methode) bezahlen... // weitere Variablen und Methoden Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/17 Objekte von jeder Klasse kann man Objekte definieren.... Kasse meinekasse ; // 1. Kassenobjekt meinekasse. geld_in_der_kasse = 1000 ; // Variable zugreifen meinekasse. bezahlen( 500 ) ; // Funktion aufrufen Kasse meinekasse2 ; // 2. Kassenobjekt meinekasse2. geld_in_der_kasse = 2000 ; // Variablenzugriff meinekasse2. bezahlen( 600 ) ; // Funktionsaufruf Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/18 9

Strings in Java Vordefinierte Klasse String String s1 = abc ; String s2 = s1 + def ; // Strings s1 und def aneinanderhängen s2 += ghi ; // an s2 hinten ghi anhängen System.out.println( s2 ) ; // String s2 ausgeben String s3 = s2.substring( 2, 4 ) ; // Teilstring herausholen Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/19 Übung: Java-Programm schreiben Schreiben Sie ein Java-Programm Willkommen.java, das Ihren Namen ausgibt. Übersetzen Sie es ( mit javac Willkommen.java ) und führen Sie es in der DOS-Box aus ( mit java Willkommen ). Ungefähr so sieht es aus, wenn es geklappt hat. Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/20 10

Fehlerbehebung beim Java-Programmieren Wenn Java-Programmierumgebung nicht richtig eingestellt ist: Java-Pfad nicht gefunden! Pfad "path" setzen danach läuft der Compiler Programm läuft nicht Pfad "classpath" setzen danach läuft es evtl. Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/21 Fehlerbehebung beim Java-Programmieren Wenn Dateinamen und Klassennamen nicht übereinstimmen: Dateiname falsch Dateiname korrekt Klassenname falsch Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/22 11

Fehlerbehebung beim Java-Programmieren Reaktionen von Compiler und JVM auf Syntaxfehler: ; fehlt am Ende des Befehls fehlt am Ende des Blocks Funktion hinter ^ (println) ist falsch geschrieben main-funktion fehlt Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/23 Webseite mit Java-Programm generieren Editieren Umlaute Compilieren und ausführen ausführen mit Ausgabeumleitung und im Browser ansehen Einführung in Java im Rahmen der Vorlesung Webbasierte Informationssysteme SS2004 - Prof. Dr. Böttcher S. 5/24 12