Guido Frisch VL Webtechnologie BA Mannheim

Slides:



Advertisements
Ähnliche Präsentationen
C Sharp (C#) Martin Saternus Senior Student Partner
Advertisements

ALP II: Objektorientierte Programmierung Sommersemester 2006
der Universität Oldenburg
der Universität Oldenburg
DVG Dateien Dateien. DVG Dateien 2 Die Klasse File Die Klasse File stellt die Verbindung zwischen dem Filesystem des Rechners und dem.
Forschungszentrum caesar
Variablen und Datentypen
Kapselung , toString , equals , Java API
(kleine!) Java Einführung Mittwoch, Heute Ziel: erstes Java-Programm erstellen Von der Aufgabenstellung bis zur Lösung Grundlagen Einfache.
Ausnahmen HS Merseburg (FH) WS 06/07.
FH-Hof Einbindung von JavaScript Anweisungen
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Indirekte Adressierung
Java: Grundlagen der Sprache
Java: Referenzen und Zeichenketten
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 3 Klassen, Objekte, Arrays und Kontrollstrukturen Sommersemester 2003 Lars Bernard.
Sommersemester 2003 Lars Bernard
Hassan Bidani Jallal Alami Rahmouni FH Wiesbaden
Struts Seminar Javabasierte Webanwendungen. Tobias Kutzler2 Überblick Historie Was ist Struts? Model Controller View Zusammenfassung.
Technik Gestaltung Navigation Daten. Übersicht Client Webbrowser InternetServer.
Java-Kurs - 2. Übung Entwicklungsumgebung Struktur von Programmen
Programmieren mit JAVA
Programmieren mit JAVA
Zusammenfassung Vorwoche
PKJ 2005/1 Stefan Dissmann Klassenhierarchie Person Kunde Goldkunde Lieferant Object.
DVG Klassen und Objekte
Einführung in die Programmierung Datensammlung
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Plattformunabhängige Programmiersprache
Einführung in das Programmieren mit JavaScript Mag. Andreas Starzer weloveIT – EDV Dienstleistungen.
Informatik 1 Übung 2.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Java und Eclipse.
EPROG Tutorium Einheit 4 Klassen und Objekte. Wiederholung Schleifen do... while while for break/continue Strings String char Methoden für Strings Arrays.
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
Informatik Objekte und Klassen 1. Objektorientiertes Modellieren und Programmieren 1.1 Objekte und Klassen.
C-Einstieg. Agenda 1Vorbereitung 2Aufbau eines Programms 2.1Header 2.2 Methoden 2.3Main 3Datentypen & Variablen 4Operatoren(+, -, *, /) 5Logik 5.1IF 5.2Switch.
Purga - Scriptengine Ein Einblick.
Informatik II Grundlagen der Programmierung Programmieren in C Programmstrukturen / Kontrollstrukturen Hochschule Fulda – FB ET Sommersemester 2014.
EPROG Tutorium #3 Philipp Effenberger
Einführung in PHP.
Einführung in PHP 5.
CuP - Java Vierte Vorlesung Entspricht ungefähr Kapitel 2.1 des Skriptums Montag, 14. Oktober 2002.
BMEVIEEA100 Grundlagen der Programmierung
PHP: Operatoren und Kontrollstrukturen
PI Burgenland Java und JavaScript 1. Teil
Parallelisierung für Multiprozessor-Maschinen
Java Syntaxdiagramme Buchstabe A B Z a z ... Ziffer
Übung Informatik I exercise01. 2 Inhaltsübersicht Nachbesprechung Übung 1 Individuelle Fragen/Bemerkungen.
Java-Kurs Übung Benutzeroberflächen und Graphik Frames (Fenster)
Java-Applets und URLs APP Philip Graf, Andreas Bößl.
Ausnahmen Vorlesung besteht aus zwei Teilen Programmierung (4 SWS)
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Java Server Pages Technologie zur Erzeugung dynamischer Webseiten basierend auf Java-Servlets Blockseminar Wintersemester 2001/2002Jochen Pfeiffer Seite.
Programmierkurs JavaUE 4 Anweisungen und ProgrammeDietrich BolesSeite 1 Programmierkurs Java Dr. Dietrich Boles Teil Imperative Programmierung Unterrichtseinheit.
Einführung in Java PING e.V. Weiterbildung Andreas Rossbacher 24. März 2005.
Reflection API1 Motivation Reflection API Core Reflection API: java.lang.reflect Seit JDK 1.1 integraler Bestandteil der Java- Klassenbibliothek Ermöglicht:
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Variablen und Datentypen
Vortrag Einführung in AspectJ. Gliederung 1 Einleitung 2 Querschnittsfunktionalitäten in AspectJ 2.1 Sprachelemente 3 Beispiel 4 Join Point Modell 5 Weaving.
JAVA - Einführung. © Übersicht Hintergrund und Geschichte Wie sieht ein JAVA Programm aus ? Was ist ein JAVA Programm ? Wie schreibt/übersetzt.
Hello World! Javakurs 2013 Arne Kappen
Java-Kurs Übung Klassen und Objekte: Vererbung (Fortsetzung)
Implementieren von Klassen
 Präsentation transkript:

Guido Frisch VL Webtechnologie BA Mannheim JAVA Guido Frisch Oft werden Sprecher dadurch herausgefordert, dass sie Fachmaterial vor einem Publikum vortragen müssen, das nicht mit dem Thema oder dem Vokabular vertraut ist. Das Material kann komplex sein oder voller Details stecken. Um einen technischen Fachbericht effektiver zu präsentieren, verwenden Sie folgende Richtlinien von Dale Carnegie Training®.   Bedenken Sie die Dauer der Präsentation und organisieren Sie dementsprechend Ihr Material. Begrenzen Sie die Menge des besprochenen Materials. Teilen Sie Ihre Präsentation in klare Abschnitte auf. Erstellen Sie eine logische Reihenfolge. Behalten Sie dabei Ihren Hauptgedanken bei. Beenden Sie Ihre Präsentation mit einer Zusammenfassung, wiederholen Sie die Schlüsselschritte und einer logischen Folgerung. Bedenken Sie, dass Ihr Publikum mit dem technischen Bereich nicht vertraut ist. Zum Beispiel, stellen Sie sicher, dass die Daten eindeutig und klar sind und die Information relevant ist. Gleichen Sie das Niveau in Bezug auf Detail und Vokabular auf das des Publikums an. Nutzen sie grafische Darstellungen um Schlüsselpunkte visuell zu unterlegen. Gehen Sie auf die Bedürfnisse Ihres Publikums ein und Sie werden ein aufmerksameres Publikum haben. Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Inhalt Java-Plattform Java-Applets Java Sprachumfang / Unterschiede zu JavaScript, sofern vorhanden... Datentypen Operatoren Kontrollstrukturen Klassen Aufbau eines Java Programms JavaBeans JavaServlets Java Server Pages (JSP) Vor- / Nachteile von Java und Java-Applets Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Java Plattform Computer-Plattform allgemein: System bestehend aus Kombination bestimmter Hardware-Architektur mit darauf ablaufendem Betriebssystem (Intel-Prozessor / Linux) Software muss für jede Computer-Plattform neu kompiliert werden Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Java Plattform Java-Anwendungen funktionieren auf jeder beliebigen Computer-Plattform Voraussetzung: Computer-Plattform spezifische Java-Laufzeitumgebung (Java Base Plattform) Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Java Plattform Komponenten: Java Virtual Machine (JVM) – Überwacht Ausführung Java Application Programming Interface (Java API) – Sammlung von Standard-Klassenbibliotheken regeln Zugriff auf Ressourcen der Computer-Plattform Java Interpreter – interpretiert den kompilierten Byte-Code JIT-Compiler (Just in Time) – übersetzt kurze Programmabschnitte in Binärcode Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Java Plattform Java Compilation Environment Klassen- Bibliothek Class Loader Byte-Code Verifier .java Java Virtual Machine Java Interpreter Java JIT - Compiler Java-Compiler Laufzeit-Umgebung .class Betriebssystem Hardware Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Java Plattform Java 2.0 in drei unterschiedlichen Editionen Java 2 Standard Edition (J2SE) Java 2 Micro Edition (J2ME): Unterhaltungselektronik, Embedded-Systems (PDA, Mobile…) Java 2 Enterprise Edition (J2EE): Highend-Systeme, verteilte Business-Applikationen (Multi-Tier Architecture) Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Java-Applets WWW als Motor für Java (Interaktion zwischen unterschiedlichster Hardware) Java wird zur 1. Programmiersprache des WWW Auf Servern werden Java-Programme (Applets) zur Verfügung gestellt Applets werden unter der Kontrolle des Browsers ausgeführt (Sandbox) http://java.sun.com/applets/ Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Java-Applets Einbindung in HTML: <APPLET CODE=“HelloWorld.class“ CODEBASE=‘http://WWW. inf.uni-jena.de/sack/java/“ WIDTH=300 HEIGHT=500> <PARAM Name=“Parameter1“ VALUE=“1“> </APPLET> Im Gegensatz zu JavaScript nicht zwangsläufig an HTML-Dokument gebunden Code nicht sichtbar Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Datentypen Einfache: char: 16 Bit Integerwert, der ein Unicode-Zeichen repräsentiert. Ganzzahlige Datentypen werden stets als vorzeichenbehaftetes Zweierkomplement kodiert: byte: 8 Bit short: 16 Bit int: 32 Bit long: 64 Bit Java unterscheidet zwei Fließkomma Datentypen: float: 32 Bit gemäß IEEE 154 double 64 Bit boolean: logischer Wert, entweder true oder false Variablendeklarationen für einfache Datentypen entsprechen der C/C++ Syntax: int a = 123; Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Rang Operator Operation 1 ++ einwertiges Pre- oder Postinkrement -- einwertiges Pre- oder Postdekrement +,- einwertige Addition, Subtraktion ~ einwertiges bitweises Komplement (type) Umwandlungsoperator (cast) 2 *‚ /, % Multiplikation, Division, Modulo 3 +, - Addition (und Stringverkettung), Subtraktion 4 <<, >>, >>> Shift-Operatoren (links, rechts, rechts mit 0-Erweiterung) 5 <, <=, >, >= Vergleichsoperatoren instanceof Typvergleich 6 ==, != Test auf (Un-)Gleichheit 7 & bitweise logische UND-Verknüpfung 8 ^ bitweise logische EXOR-Verknüpfung 9 | bitweise logische ODER-Verknüpfung 10 && bedingtes logisches UND 11 || bedingtes logisches ODER 12 ?: dreiwertige konditionale Zuweisung 13 = Zuweisung Operatoren Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Kontrollstrukturen Die Kontrollstrukturen in Java sind äquivalent zu denen in C/C++, d. h. es existieren folgende Konstrukte: if (bedingung) then {anweisungen} else {anweisungen} while (bedingung) {anweisungen} do {anweisungen} while (bedingung) for (start; bedingung; iteration) {anweisungen} switch: konditionale Mehrfachverzweigung break: Abbruch der Ausführung des aktuellen Anweisungsblocks und Fortsetzung im umgebenden Anweisungsblock, continue: Abbruch der Verarbeitung und Fortsetzung bei Folgeiteration Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Klassen Sammlung von Attributen und Methoden Attribute und Methoden definieren Inhalt und Funktionalität eines Objekts public class Kreis { private float Radius; … public float Kreisflaeche( { returns 3,l415*Radius*Radius; } Klasse Kreis wird über das Attribut Radius beschrieben und verfügt über die Methode Kreisflaeche Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Klassen Allen Klassen ist die Basisklasse object gemeinsam object stellt gemeinsame Methoden und Operatoren bereit equals(): Vergleich von Objekten, clone(): erzeugt Kopie eines Objekts, getclass(): dient der lnformationsgewinnung über die Klasse einer bestimmten Objektinstanz, hashcode(): generiert Hashcode zum Speichern eines Objekts in der HashTable Klasse, toString(): ermöglicht Textausgabe eines Objekts Instance0f(): ergibt true wenn Objekt auf der linken Seite eine Instanz der auf der rechten Seite angegebenen Klasse ist. Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Aufbau eines Java-Programms Besteht aus einer Menge von Klassendefinitionen <className>.java Eine ausgezeichnete Klasse muss die Methode main() enthalten = Beginn des Programms Es gibt in Java keine globalen Variablen Variablen werden über <className>.<methodName> angesprochen Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Speicherverwaltung Anforderung von Speicherbereich für eine Objektinstanz erfolgt über das Schlüsselwort: new Unterschied zu C und C++: Garbage Collection verhindert explizite Speicherfreigabe Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Exception Handling Vordefinierte Unterklassen java.lang.Error: Fehlerbehandlung Java.lang.Exception: Behandlung von Ausnahmen Vergleichbar mit C++ Kontrollstrukturen für die Ausnahmebehandlung: try: schließt den Anweisungsblock ein, in dem die Ausnahme auftreten catch: folgt der try-Anweisung und spezifiziert die Behandlung eines bestimmten Ausnahmefalls, finally folgt allen catch-Klauseln eines try-Blocks und gibt die Default-Ausnahmebehandlung an, die durchgeführt wird, wenn keine der catch-Klauseln zutrifft. Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Ereignisbehandlung Ereignisse = Benutzereingaben (Mausoperationen, Tastatureingaben, Schließen von Fenstern etc.) Ereignisse sind in java.awt (Java Abstract Windowing Toolkit) spezifiziert Ereignisse rufen assoziierte Methode auf Arten des Ereignisempfangs: Version 1.02: handleEvent() leitet an konkrete Verarbeitungsmethoden weiter Version 1.1: Ereignis/Listener-Konzept z.B. MouseListener oder KeyboardListener Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim JavaBeans Infrastruktur zur Entwicklung wieder verwendbarer Komponentenbasierter Software JavaBean-Komponente muss eine Reihe von Bedingungen erfüllen um in unterschiedlichen Anwendungsarten wieder verwendet werden zu können JavaBean-API defniert ein Softwarekomponentenmodell für Java, mit dem unabhängig von einander implementierte JavaBeans zu einer neuen Anwendung zusammengesetzt werden können. Enterprise JavaBeans: Serverseitiger Einsatz von JavaBeans Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim Java Servlets = Serverseitige Ausführung von Java-Applets Besonders wichtig bei datenbankgenerierten Web-Seiten Nachteil von CGI: Jede Anfrage erzeugt einen neuen Prozess Java Servlets werden nur einmal aktiviert und erzeugen bei erneuter Anfrage lediglich einen neuen Thread Zugriff auf Umgebungsvariablen des WWW-Servers möglich Neben WWW-Server wird noch eine Servlet-Engine benötigt Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Java Server Pages (JSP) Direkte Einbindung von Java-Code in HTML Java-basierte Erweiterung von Server Side Includes Vergleichbar mit PHP Ablauf Client-Server-Interaktion: WWW-Client stellt Anfrage nach JSP-Dokument an WWW-Server Server wandelt JSP-Dokument mit JSP-Processor in Java Servlet um Java Servlet wird in Byte-Code konvertiert => ein neues HTML-Dokument wird erzeugt WWW-Server liefert neues HTML-Dokument an WWW-Client Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Guido Frisch VL Webtechnologie BA Mannheim WWW-Client WWW-Server JSP-Processor JSP-Dokument .jsp Servlet-Container .java Java Servlet Umwandlung Anfrage .class + .class Umwandlung in Java Byte-Code Verarbeitung Antwort Ausführung .html .html t t t Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017 Verarbeitung

Java Server Pages (JSP) Einbindung eines Scriptlets in HTML: <% … Java Code …%> Einbindung in XML-Dokument: <jsp:scriptlet> ... Java Code … </jsp:scriptlet> Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017

Vor- / Nachteile von Java und Java-Applets ??? Guido Frisch VL Webtechnologie BA Mannheim 16.04.2017