1. Java Grundbegriffe



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

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

Einführung in Eclipse und Java

LEHRSTUHL FÜR DATENBANKEN

GameGrid mit BlueJ Seite 1

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

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

Vorkurs Informatik WiSe 15/16

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

CADEMIA: Einrichtung Ihres Computers unter Windows

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

4D Server v12 64-bit Version BETA VERSION

Einführung zu den Übungen aus Softwareentwicklung 1

Informatik 1 Tutorial

Installationsanleitung

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

Kompilieren und Linken

Version 0.3. Installation von MinGW und Eclipse CDT

Übung: Verwendung von Java-Threads

Installation von NetBeans inkl. Glassfish Anwendungs-Server

Anleitung zum Arbeiten mit Microsoft Visual Studio 2008 im Softwarepraktikum ET/IT

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren

Applications Applets (eingeschränkte Rechte)

ecaros-update 8.2 Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Eschenweg Weiterstadt

Konventionen. Danksagung

CADEMIA: Einrichtung Ihres Computers unter Mac OS X

Umstellung VPSMail von Java-Web-Start auf Installer

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Java Einführung Programmcode

Installation und Inbetriebnahme von Microsoft Visual C Express

JAVA. Ein kurzer Überblick. Thomas Karp

Programmierung für Mathematik (HS13)

Datensicherung. Beschreibung der Datensicherung

Avira Support Collector. Kurzanleitung

Step by Step Webserver unter Windows Server von Christian Bartl

Informatik I Tutorial

CADEMIA: Einrichtung Ihres Computers unter Linux mit Oracle-Java

C++ mit Eclipse & GCC unter Windows

Installation der SAS Foundation Software auf Windows

Buddy - Algorithmus Handbuch für Endnutzer Stand

COSA. Portal Client Installation JAVA J2SE / JRE Version 1.4.2_09, Stand Copyright

Java Server Faces. Andy Bosch. Das Standard-Framework zum Aufbau webbasierter Anwendungen. An imprint of Pearson Education

Computeria Solothurn

ASD ZSS. RZ-Süd (LfStaD) Internet

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Um zu prüfen welche Version auf dem betroffenen Client enthalten ist, gehen Sie bitte wie folgt vor:

The ToolChain.com. Grafisches Debugging mit der QtCreator Entwicklungsumgebung

INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA

Internet online Update (Internet Explorer)

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

Die i-tüpfelchen: Favicons

Durchführung der Datenübernahme nach Reisekosten 2011

ANLEITUNG EBOOKS. 1. Der Kauf von ebooks über den Onlineshop

C ++ in der Computerlinguistik

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Handbuch Installation und Nutzung von KVSAonline über KV-FlexNet

Internet Explorer Version 6

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Task: Nmap Skripte ausführen

Adminer: Installationsanleitung

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Wählen Sie bitte START EINSTELLUNGEN SYSTEMSTEUERUNG VERWALTUNG und Sie erhalten unter Windows 2000 die folgende Darstellung:

CSS-Grundlagen. Etwas über Browser. Kapitel. Die Vorbereitung

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Lizenzierung von System Center 2012

R-BACKUP MANAGER v5.5. Installation

Java Script für die Nutzung unseres Online-Bestellsystems

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

COMPUTER MULTIMEDIA SERVICE

Einführung in PHP. (mit Aufgaben)

Verbinden. der Firma

Verwendung des Terminalservers der MUG

Monatstreff für Menschen ab 50 Temporäre Dateien / Browserverlauf löschen / Cookies

Die R-Homepage R herunterladen

ARCWAY Cockpit. Professional Upgrade. von 3.0 auf 3.1

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

Handbuch. timecard Connector Version: REINER SCT Kartengeräte GmbH & Co. KG Goethestr Furtwangen

Webalizer HOWTO. Stand:

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista

Fernzugang Uniklinikum über VMware View

Anleitung über den Umgang mit Schildern

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Software-Engineering und Optimierungsanwendungen in der Thermodynamik

FreePDF XP. Dokumentation

Reborn Card Ultimate 8 Kurzanleitung Installation

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

Content Management System mit INTREXX 2002.

SANDBOXIE konfigurieren

GS-Programme 2015 Allgemeines Zentralupdate

Informationen zur Verwendung von Visual Studio und cmake

Windows 8 Lizenzierung in Szenarien

Java Übung. Einführung. 12. April Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung. Vorbereitendes.

teischl.com Software Design & Services e.u. office@teischl.com

Umgang mit der Software ebuddy Ändern von IP Adresse, Firmware und erstellen von Backups von ewon Geräten.

Das Leitbild vom Verein WIR

INHALT 1. INSTALLATION DES V-MODELL XT UNTER WINDOWS 7 2. INSTALLATION DES V-MODELL XT UNTER WINDOWS VISTA

Transkript:

1. Java Grundbegriffe Geschichte von Java Programmieren mit Java Interpretieren vs. Kompilieren Java Byte-Code Jave Virtual Machine Arbeitsmaterialien Allgemeine Informatik 2 SS09 Folie 1.1

Java, eine objektorientierte Programmiersprache Java ist eine objektorientierte Programmiersprache und als solche ein eingetragenes Warenzeichen der Firma Sun Microsystems. Sie ist eine Komponente der Java-Technologie. Programmiersprache Java Java-Plattform Java Virtual Machine (JVM) Java Runtime Environment (JRE) Java Development Kit (JDK) Java Logo Basisdaten Entwickler: Sun Microsystems Aktuelle Version: 6.0 (11. Dezember 2006) Betriebssystem: Windows, Linux, Mac OS X, Solaris Website: java.sun.com Allgemeine Informatik 2 SS09 Folie 1.2

Geschichte von Java Entwicklung seit 1991 von der Firma Sun Microsystems Ziel: Programmierung von elektronischen Geräten Konsumgüter sollten zur Interaktivität befähigt werden Arbeitstitel während der Entwicklung: OAK (Object Application Kernel) Wegen namensrechtlicher Probleme Umbenennung in Java Java ist eine starke Kaffeebohnensorte Allgemeine Informatik 2 SS09 Folie 1.3

Geschichte von Java Java lehnt sich in den Äußerlichkeiten stark an die weit verbreitete und ältere Programmiersprachen C und C++ an. C/C++-Programmierern soll der Umstieg erleichtert werden. Höhere Akzeptanz in der Wirtschaft Aber es werden auch Altlasten aus C/C++ übernommen Beispiel: Java verwendet wie C/C++ für Zuweisungen = und für Gleichheit == Andere Programmiersprachen verwenden die intuitivere Variante mit := für Zuweisungen und = für Gleichheit Hintergrund: Die Länge von Programmen war 1970 noch ein ernsthaftes Speicherplatzproblem. Zuweisungen kommen öfter in Programmen vor, daher besser dort ein Zeichen einsparen. Allgemeine Informatik 2 SS09 Folie 1.4

Geschichte von Java Allgemeine Java-Philosophie In C/C++ hatte der Programmierer maximale Freiheit Alles, was nicht ausdrücklich verboten ist, ist erlaubt, egal ob es Sinn macht oder nicht. Der Programmierer hat so einen hohen Grad an Selbstverantwortung. Beim Entwurf von Java ist man davon ausgegangen, dass diese Selbstverantwortung für die meisten Programmierer zu hoch ist. Alles, was aller Erfahrung nach keinen Sinn macht, ist von vornherein verboten. Allgemeine Informatik 2 SS09 Folie 1.5

Compiler vs. Interpreter Ein Programmierer entwickelt ein Programm. Die Entwicklung findet in einer menschenlesbaren Programmiersprache statt (z. B. Java). Der Programmierer erstellt ein oder mehrere Source-Files. Diese müssen dann in maschinenlesbaren Code umgewandelt werden. Maschinen verstehen nur Maschinencode (Binärcode). Die Umwandlung kann durch einen Compiler oder Interpreter geschehen. Allgemeine Informatik 2 SS09 Folie 1.6

Compiler vs. Interpreter Die Ausführung eines kompilierten Maschinencodeprogramms ist wesentlich schneller als die Abarbeitung durch einen Interpreter. Compiler Einsatz des Programms in der Praxis. Die Zeit fürs Kompilieren wird eingespart, was bei großen Programmen mitunter sehr lang dauert. Interpreter Verwendung während der Entwicklung des Programms. Kompilieren: Das Source-File wird in ein Maschinenprogramm übersetzt, das danach jederzeit als ein normaler Prozess des Betriebssystems aufgerufen werden kann. Interpretieren: Das Source-File wird ohne vorherigen Arbeitsgang vom Interpreter Schritt für Schritt ausgeführt. Allgemeine Informatik 2 SS09 Folie 1.7

Compiler vs. Interpreter Im Prinzip kann jede Sprache sowohl kompiliert als auch interpretiert werden. Aber verschiedene Sprachen sind für das eine oder andere besser geeignet. HTML wird interpretiert. Wenn eine HTML-Seite im Browser geladen wird, startet der Browser einen HTML-Interpreter. Dieser Interpreter stellt die Texte und Bilder gemäß den enthaltenen Formatierungsbefehlen dar. C/C++ wird kompiliert. C/C++ wird für größere und komplexere Programme verwendet. Allgemeine Informatik 2 SS09 Folie 1.8

Compiler vs. Interpreter Für Java ist die Frage kompilieren vs. interpretieren strikt geregelt. Ein salomonisches sowohl als auch. Ein Java-Source-File wird nicht in Maschinencode, sondern in sogenannten Java-Bytecode kompiliert. Zum Kompilieren wird das Programm javac verwendet. z. B. javac Programmierprojekt.java Zum Abarbeiten des Programm wird dann der Java-Bytecode interpretiert. z. B. java Programmierprojekt Allgemeine Informatik 2 SS09 Folie 1.9

Java-Bytecode und die Java-Virtual-Machine Durch diese Abstraktion von konkreter Hardwareplattform und Betriebssystem kann im Prinzip jedes kompilierte Java-Bytecode-Programm auf jedem System laufen. Zusätzlich enthält Java-Bytecode noch Informationen, die es z. B. erlauben zu prüfen, ob das Programm nur auf Daten und Ressourcen zugreift, die ihm gestattet sind. Java-Bytecode Java-Bytecode ist eine idealisierte und standardisierte Variation von Maschinencode. Diese ist speziell für die Java-Virtual-Machine angepasst. Java-Virtual-Machine Die Java-Virtual-Machine ist ein virtuelles Rechnersystem, das auf dem Betriebssystems des Computers läuft und innerhalb dessen der Java-Byte-Code ausgeführt wird. Allgemeine Informatik 2 SS09 Folie 1.10

Java-Laufzeitsystem Während der Ausführung eines Java- Programms passieren einige Dinge im Hintergrund. Das Java-Laufzeitsystem übernimmt Aufgaben, die nicht explizit im Quellcode gestellt wurden, z. B. Zugriffsprüfungen Abfangen von Ausnahmen wie Division durch 0 Java-Laufzeitsystem Das Java-Laufzeitsystem stellt Dienste zur Verfügung, die während der Programmausführung im Hintergrund automatisch vom Interpreter (hier speziell: der JVM) ausgeführt werden, ohne explizit im Quellcode erstellt worden zu sein und dafür sorgen, dass das Programm sinnvoll und sicher ausgeführt werden kann. automatische Speicherbereinigung Allgemeine Informatik 2 SS09 Folie 1.11

Einsatz von Java-Programmen Java ist nicht einfach zu erlernen für Programmieranfänger. Warum also Java? Java ist heute und zukünftig eine der wichtigsten Programmiersprachen wegen ihrer Möglichkeiten der Internetprogrammierung. Java-Applets und Java-Servlets SAP Netweaver Bekannte Programme aus AI I und dem Studium KarelJ BlueJ Eclipse Allgemeine Informatik 2 SS09 Folie 1.12

Java-Applets auf Web-Seiten einmalig Programmierer entwickelt Java- Programm Programmierer kompiliert Programm Programm in Java- Bytecode Entwicklung immer gleich immer gleich Java-Programm wird auf der JVM des Benutzers ausgeführt Java-Virtual-Machine angepasst auf das jeweilige Betriebssystem Benutzer öffnet eine Website, die das Java-Programm enthält Interaktion Betriebssystem Betriebssystem des Benutzers, z. B. Windows, OS X, Linux Java-Bytecode auf Webserver Ausführung Umsetzung durchs System Allgemeine Informatik 2 SS09 Folie 1.13

Was braucht man zum Arbeiten mit Java? Sun Microsystems stellt folgende Bestandteile zur Verfügung: Eine Ausführungsumgebung zum Ausführen von Java-Programmen. Java Virtual Machine (JVM) Java Runtime Environment (JRE) Eine Entwicklungsumgebung zum Erstellen von Java-Programmen. Java Development Kit (JDK) Allgemeine Informatik 2 SS09 Folie 1.14

Was braucht man noch zum Arbeiten mit Java? Zum Erstellen von Java-Programmen benötigt man mindestens einen Editor und die Konsole. Im Editor schreibt man den Quellcode. Auf den Linuxsystemen der RBG startet man einen solchen z. B. durch gedit MeineKlasse.java Anschließend muss der Quellcode kompiliert und ausgeführt werden. Der Compiler wird gestartet über javac MeineKlasse.java und erzeugt die Datei MeineKlasse.class Das Programm kann nun mit java MeineKlasse ausgeführt werden Allgemeine Informatik 2 SS09 Folie 1.15

Was braucht man noch zum Arbeiten mit Java? Der etwas elegantere und einfachere Weg führt über eine IDE. Bekannte IDEs für Java KarelJ BlueJ Eclipse Die wohl verbreitetste IDE für Java ist Eclipse. Eclipse ist eine sehr mächtige Software für den professionellen Einsatz. IDE Integrated Development Environment (IDE): ist ein Anwendungsprogramm zur Entwicklung von Software, das in der Regel über folgende Komponenten verfügt: Texteditor, Compiler bzw. Interpreter, Linker, Debugger, Quelltextformatierungsfunktion. Für das Lernen von Java eignet sich BlueJ sehr gut. Allgemeine Informatik 2 SS09 Folie 1.16

Was braucht man noch zum Arbeiten mit Java? Um die vielen Möglichkeiten von Java nutzen zu können benötigt man Informationen über die zur Verfügung stehenden Klassen und Funktionen. Der klassische Weg für erfahrene Programmierer führt über die Java-API (Application Programming Interface). Diese ist einsehbar unter http://java.sun.com/javase/6/docs/api/ Ein etwas angenehmerer Weg, Informationen über Klassen und Funktionen von Java zu erhalten führt über Java-Referenz, also Bücher. Christian Ullenboom: Java ist auch eine Insel http://www.galileocomputing.de/openbook/javainsel6/ Guido Kröger: Handbuch der Java-Pogrammierung http://www.javabuch.de/ Allgemeine Informatik 2 SS09 Folie 1.17