Teil 3 - Java. Grundlagen Klassen, Attribute Methoden

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

Grundlagen der Informatik für Ingenieure I

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

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

OOP und JAVA (Vorlesung 11-13)

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

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

Vorkurs Informatik WiSe 16/17

Vorkurs Informatik WiSe 17/18

Applications Applets (eingeschränkte Rechte)

Einführung in die Programmierung mit Java

Einführung in die Programmierung 1

Programmierkurs. Manfred Jackel

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

Inhaltsverzeichnis. Grundlagen und Einführung (1. Band) 1

Kapitel 02. Java was, wann, warum, wieso. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz

Programmieren I. Die Programmiersprache Java. Institut für Angewandte Informatik

Kapitel 1: Einführung

Java: Der Einstieg. Algorithmen und Datenstrukturen II 1

Teil 5 - Java. Programmstruktur Operatoren Schlüsselwörter Datentypen

Java-Einführungskurs Informatik II (D-ITET) Vincent Becker,

II.1.1. Erste Schritte - 1 -

Programmierkurs Java. Grundlagen. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck

Java Einführung Programmcode

JAVA. Ein kurzer Überblick. Thomas Karp

Java-Einführungskurs Informatik II (D-ITET) Vincent Becker,

Praxis der Programmierung

Vorkurs Informatik WiSe 15/16

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

Java - Einführung in die Programmiersprache. Leibniz Universität IT Services Anja Aue

Java für C++ Programmierer

Java und Eclipse Installation, erstes Beispielprogramm

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

Informatik II - Übung 01

Objektorientierte Programmierung Studiengang Medieninformatik

Praktische Informatik 1

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

Methoden und Klassen. Silke Trißl Wissensmanagement in der Bioinformatik

Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode

Eclipse Tutorial.doc

II.1.1. Erste Schritte - 1 -

Es gibt keinen Algorithmus zum Schreiben eines Programms bzw. Algorithmus.

Übung Softwareentwicklung 1, WS0910 Gemeinsame Einführung

Grundlagen der Informatik für Ingenieure I

Grundlagen der Programmierung UE

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Programmiervorkurs. Wintersemester 2013/2014

Grundlagen der Programmierung UE

Ursprünge. Die Syntax von Java. Das Wichtigste in Kürze. Konsequenzen. Weiteres Vorgehen. Rund um Java

Übungen Informatik I. JAVA - Einführung. elga Gabler, Holger Vogelsang, Christian Pape. Übungen Informatik 1 Folie 1

Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen

Modellierung und Programmierung 1

Einführung zu den Übungen aus Softwareentwicklung 1

Installationsanleitung

Einführung in JAVA. Viele Höhen und Tiefen Java war schon einmal nahezu tot. Heute extrem weit verbreitet vom Supercomputer bis hin zum Handy.

JAVA als erste Programmiersprache Semesterkurs

Programmieren lernen mit Groovy Allgemeines Programme und ihre Ausführung

Einstieg in Java und OOP

Informatik für Ingenieure (InfIng)

Software-Engineering 2. Software-Engineering 2. Entwicklungsumgebungen (IDE) IT works. Klaus Mairon

Erste Java-Programme (Scopes und Rekursion)

Vorlesung Informatik II

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter

Silke Trißl Wissensmanagement in der Bioinformatik. Objektorientierte Programmierung (OOP) Vorstellung wie in der realen Welt: Farbe Hubraum Tank...

Deklaration einer Klasse Innere innerhalb Klassen einer in Ja anderen v a Klasse

Introduction to JSF technology and Rapid Application Development Roland Zänger

II.1.1. Erste Schritte - 1 -

Übungen Informatik I. JAVA - Eclipse. elga Gabler, Holger Vogelsang, Christian Pape. Übungen Informatik 1 1

Architekturen Internet-basierter Informationssysteme

Objektorientierte Softwareentwicklung SoSe 15

Transkript:

Teil 3 - Java Grundlagen Klassen, Attribute Methoden 1

Java 2 - Geschichte Ursprung: Green -Project bei der Firma Sun Microsystems 1991 Entwicklung eines Systems mit folgenden Eigenschaften: hardwareunabhängig möglichst klein Einsatzgebiet: Konsumgeräte, z.b. Umschalter für das Kabelfernsehen basierend auf C++ (objektorientiert) ohne dessen Schwierigkeiten Name: zuerst OAK (Object Application Kernel), später Java Durchbruch: Ende 1995, 1998 dann JAVA 2 2 Grundlagen der Programmierung II

Java 2 - Varianten Micro Edition (J2ME) für eingebettete Systeme, PDAs, Smart Phones etc. Standard Edition (J2SE) normales JDK Enterprise Edition (J2EE) EJBs, Servlets Ab der Version Java 1.2 spricht man von Java 2! Die zur Zeit neuste Version ist Java 1.5 und ist bekannt als Edition 5, Tiger -Release. Online: Die Varianten können heruntergeladen werden unter: http://java.sun.com 3 Grundlagen der Programmierung II

Plattformunabhängigkeit von Java Erinnerung: Übliche Übersetzungsvorgänge bei Programmiersprachen Compiler (bei Modula-2, C usw.): MODULE p; VAR n,i:integer; BEGIN FOR i:=1 TO n DO n:=n*n; END; END p Programm (Quellcode) Compiler 00010110010 11001001001 00001110001 11111000001 Ausführung 10101010100 11001100011 11001100111 11000111001 Maschinencode Ergebnis Interpreter (bei Basic, Lisp usw.): 10 INPUT n$ 20 FOR i=1 TO 10 30 PRINT Hi,n$ 40 NEXT Anweisung Nr. i Interpreterer 00010110010 11001001001 Maschinencode Ausführung Ergebnis Nr. i 4 Grundlagen der Programmierung II

Plattformunabhängigkeit von Java Vorgehensweise bei Java (Java Virtual Machine) Ergebnis Java- Interpreter (i686-cpu) class Dreieck extends GeoObj { double seite,hoehe,alpha; Dreieck(double s, double h, double a) { this.seite=s; this.hoehe=h; this.alpha=a;} double berechneflaeche() { return 0.5*seite*hoehe);} } Java Compiler Java- Interpreter (Power PC) Ergebnis Java Quellcode Java Bytecode (plattformunabhängig) Java- Interpreter (SPARC) Ergebnis 5 Grundlagen der Programmierung II

Plattformunabhängigkeit von Java Eigenschaften der Java Virtual Machine Die Virtuelle Maschine ist eine Art Universaltranslater. (vgl. mit Raumschiff Enterprise) Der Bytecode ist der Maschinencode der Virtuellen Maschine. von der Virtuellen Maschine direkt ausführbar Die Virtuelle Maschine ist für alle gängigen Systeme verfügbar. (Windows, Solaris, Linux usw.) Die Virtuelle Maschine ist z.b. auch in WWW-Browsern integriert. Einsatz von sog. Applets möglich. 6 Grundlagen der Programmierung II

Arten von Java-Programmen Applikationen: normale Programme (vergleichbar mit anderen Sprachen wie Modula-2, C) eigenständig und ohne Sicherheitseinschränkungen Eine auszuführende Klasse muss eine main-methode enthalten Aufruf durch den Java-Interpreter java Applets: Java-Programme für den Einsatz in einem WWW-Browser Einbettung in eine HTML-Seite durch das <applet>- oder das <object>-tag nicht eigenständig keine main-methode erforderlich; spezielle Schnittstelle Sandbox-Prinzip / Sicherheitseinschränkungen Server-Anwendungen: Servlets (Java Server Pages), Enterprise Java Beans 7 Grundlagen der Programmierung II

Programmstruktur: Klassen, Methoden und Variablen Struktur: class classname { } type variablenname = anfangswert ; rückgabewert methodenname(parameterliste){ } Ein erstes Beispiel: class Student { int semester; int getsemester() { return semester; } 8 Grundlagen der Programmierung II

Objekterzeugung und Methodenaufruf Objekt student1 erzeugen: Student student1 = new Student(); Methode aufrufen und Rückgabewert speichern: int semanzahl = student1.getsemester(); Konstruktor: Student() { } Student(int semester) { } 9 Grundlagen der Programmierung II

Applikationen Erster Schritt: Erstellen einer Klasse Hello (in einem Editor) mit dem Namen Hello.java class Hello { public static void main(string args[]) { System.out.println( Hello Students! ); } } Zweiter Schritt: Compilieren des Quellcodes Aufruf: javac Hello.java Ergebnis: autom. Erzeugen des Bytecodes Hello.class Dritter Schritt: Evtl. Ausführen des Programms Aufruf: java Hello (Ausgeführt wird immer die main-methode!) Ausgabe: Hello Students! 10 Grundlagen der Programmierung II

Applets Beispiel: package simpleapplet; import java.awt.graphics; class HelloWorld extends java.applet.applet { public void paint (Graphics g) { g.drawstring( Hallo Welt!, 10, 10); } } 11 Grundlagen der Programmierung II

Einbindung des Applet in HTML <html> <body> <applet codebase = "." code = "simpleapplet.helloworld.class" width = "400" height = "300" > </applet> </body> </html> 12 Grundlagen der Programmierung II

Ausführen des Applets 13 Grundlagen der Programmierung II

Java Entwicklungsumgebungen Eine Entwicklungsumgebung (Integrated Development Environment IDE) hilft dem Entwickler beim Erstellen und Debuggen von Programmen. Beispiele für Java Entwicklungsumgebungen: Web Sphere von IBM (basiert auf Eclipse) JBuilder von Borland Sun ONE Studio von Sun Microsystems (ehemals Forte)... und viele mehr! 14 Grundlagen der Programmierung II

OpenSource: Eclipse 3.1 15 Grundlagen der Programmierung II

Eclipse Eclipse 3.0 oder 3.1 unter: www.eclipse.org PlugIn Omondo für UML www.omondo.de 16 Grundlagen der Programmierung II

Java - API - Dokumentation http://java.sun.com/j2se/1.5.0/docs/api/ 17 Grundlagen der Programmierung II

Java API: Klasse Applet 18 Grundlagen der Programmierung II

Java API: Klasse Applet 19 Grundlagen der Programmierung II

Java API: Klasse Applet 20 Grundlagen der Programmierung II

Zugreifbarkeit auf Methoden und Variablen private nur innerhalb der Klasse sichtbar und somit zugreifbar. ohne nur innerhalb des Pakets, das die Deklaration der Klasse enthält (Standardzugriffsrecht). protected zugreifbar von Methoden der eigenen Klasse, der davon abgeleitete Klassen und von Klassen im selben Paket. private ohne protected public Zugriffsmodifizierer public für Methoden aller Klassen zugreifbar (welche die Klasse importieren). 21 Grundlagen der Programmierung II

Literatur zu Java Java Homepage Sun: http://java.sun.com Java API Specification: http://java.sun.com/j2se/1.5.0/docs/api/index.html Java Compiler JDK 5.0 und Virtuelle Maschine JRE 5.0: http://java.sun.com/j2se/1.5.0/download.jsp Java Tutorial: http://java.sun.com/developer/onlinetraining/new2java/index.html Horstmann, Cornell: "Core Java 2, Band 1", Addison-Wesley Java News: http://www.onjava.com/ Reading: Thinking in Java 3 von Bruce Eckel!!! 22 Grundlagen der Programmierung II