Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Programmieren mit JAVA JAVA? Um herauszufinden ob diese Programmiersprache für Sie geeignet ist, zeigen Sie bitte auf das Bild, welches Ihre gegenwärtigen.

Ähnliche Präsentationen


Präsentation zum Thema: "Programmieren mit JAVA JAVA? Um herauszufinden ob diese Programmiersprache für Sie geeignet ist, zeigen Sie bitte auf das Bild, welches Ihre gegenwärtigen."—  Präsentation transkript:

1

2 Programmieren mit JAVA

3 JAVA? Um herauszufinden ob diese Programmiersprache für Sie geeignet ist, zeigen Sie bitte auf das Bild, welches Ihre gegenwärtigen Interessen am besten wiederspiegelt! "Java ist ein Begriff, der für viele verschiedene Dinge steht... Scott McNealy, President Sun Microsystems Inc.

4 JAVA? Zwischen 1990 und 1993 arbeitete James Gosling mit Anderen bei Sun Microsystems an einem Softwarekonzept für Steuergeräte und interaktives TV. Dabei entwickelten sie eine einfache objekt-orientierte Programmiersprache Um 1993 erkannte man bei Sun, dass interaktives TV "OUT" und dafür das Internet "IN" war. Man beschloss die Plattformunabhängigkeit der Sprache mit dem vollständig in Java programmierten Webbrowser "HotJava" zu demonstrieren. Der Durchbruch gelang allerdings erst 1995, als Netscape die Java-Technologie in ihren Browser aufnahm und weltweit verbreitete.

5 JAVA? Was ist das Besondere an Java? Plattformunabhängigkeit hohe Stabilität und Sicherheit hohe Performance in der Laufzeit Java: eine einfache, objektorientierte, dezentrale, interpretierte, stabil laufende, sichere, architekturneutrale, portierbare und dynamische Sprache, die Höchstgeschwindigkeitsanwendungen und Multithreading unterstützt. (offizielle Definition von Sun)

6 JAVA? Wie geht es weiter mit Java? Java contra Windows kostenlose Entwicklungsumgebung sehr viel Unterstützung im Internet

7 Sequentiell - Objektorientierte Sprachen sequentiell Ein herkömmliches Programm besteht aus einer Menge von Unterprogrammen, welche auf verschiedenste Weise Eingabedaten bearbeiten und verändern. Die Daten werden direkt (oder mittels Pointern und globalen Variablen) von Unterprogramm zu Unterprogramm weitergereicht und verändert. Man kann sich den Ablauf eines sequentiellen Programms als eine Art Fliessbandarbeit vorstellen. Beispiele: C, Cobol, Basic, Pascal

8 Sequentiell - Objektorientierte Sprachen objektorientiert Ein objekt-orientiertes Programm besteht aus einer strukturierten Menge von Objekten. Jedes Objekt stellt eine abgeschlossene, autonome Einheit von Daten und Algorithmen dar. Man kann sich den Ablauf eines objekt-orientierten Programm als eine Art Teamwork von Objekten vorstellen. Objekt-orientierte Techniken bringen insbesondere Vorteile für die Implementation von modernen fensterorientierten Anwendungen. Sie erlauben z. B. auf einfache Weise das quasiparallele Verwalten von verschiedenen gleichzeitig existierenden Objekten auf dem Bildschirm (Buttons, Fenster, Bilder,...) Beispiele: Java, C++, Smalltalk

9 Applikationen - Applets Applets werden von einer.HTML-Datei aus aufgerufen werden von einem Web- Browser ausgeführt (interpretiert) haben sehr beschränkte Zugriffsrechte ("Sandbox") sind Objekte aus der Unterklasse von Applet brauchen eine paint Methode Applikationen sind selbständig lauffähige "stand-alone" Anwendungsprogramme benötigen zu Ausführung eine auf dem Zielsystem installierte Virtual Machine. haben vollen Zugriff auf das Filesystem sind Objekte aus der Unterklasse von Object brauchen (in Analogie zu C) eine main-Methode

10 Beispiel: Applikation - Applet class HelloJava { public static void main (String args[]) { System.out.println("Hello Java!"); } import java.awt.*; public class HelloJava extends java.applet.Applet { public void paint(Graphics g) { g.drawString("Hello Java!",5,25); } }

11 Objektorientierung?... es gilt als erstes festzuhalten, dass nicht die Eigenschaften einer Programmiersprache in der Regel Objektorientiertheit ausmachen, sondern der Denkansatz für die Lösung einer zu programmierenden Aufgabe!

12 Objektorientierung?... Kennzeichnend ist die Aufhebung der Trennung von Datenebene und Anweisungsebene....Zusammengehörende Anweisungen und Daten bilden eine zusammengehörende, abgeschlossene und eigenständige Einheit....Man nennt diese Einheit: Objekte

13 Objekte Objekte bestehen aus: Daten (Instanz-Variablen oder Attributen) Die Beschreibung eines konkreten Objekts. (z.B. ein Haushalt-Roboter in Position und Zustand der Sensoren) Programmen (Methoden) Was kann man alles mit dem Objekt machen? (move, setPos, getSensors,...) Die Summe aller Attribute und Methoden bilden zusammen die Eigenschaften des Objekts.

14 Klassen Eine Art Bauplan, der die Eigenschaften und das Verhalten von Objekten eines bestimmten Typs beschreibt. Das Programmstück Robot beschreibt z.B. die Klasse "Robot als Maschinen mit Position und Sensoren, die sich bewegen können. Die Attribute der Objekte werden in der Klasse gesammelt und zur späteren Erzeugung neuer Objekte verwendet. Ein Objekt ist eine Instanz seiner Klasse Bsp. Saxophon - Holzblasinstrument - Blasinstrument - Musikinstrument - Musik erzeugende Dinge -...

15 Klassenhierarchie Alle Klassen sind hierarchisch aufgebaut. Jede Klasse erweitert dabei die Eigenschaften (Attribute und Methoden) ihrer Oberklasse um eine klar abgegrenzte Funktionalität. Ein Objekt verfügt nun also über alle Eigenschaften, die in seinem eigenen Klassencode und im Code seiner Oberklassen definiert worden sind. Ein wichtiger Spezialfall ist dabei, dass Klassen Methoden ihrer Oberklassen auch durch eine neue Implementation ersetzen können. Man sagt dann, eine Klasse überschreibt die Methode ihrer Oberklasse.

16 Übung Verwenden Sie die Begriffe Klasse, Instanz, Objekt, Attribut und Methode zur Beschreibung der Grafik! Finden Sie Beispiele für eine Superklasse und mehrere Unter(Sub)klassen

17 weitere Begriffe der OOP Metaklasse, Abstrakte Klasse, Vererbung, Überschreiben, Polymorphismus, Binden,... das nächste Mal...

18 Literaturhinweise Ralph Steyer "Java 1.2", Markt & Technik, 1998 Arbeitshefte Informatik "Java", Klett, 1999 Java 1.2 Schnellübersicht, Markt & Technik, 1998 O'Niel Annand Valentin Som "Java - plattformunabhängig programmieren", BHV, 1997 Misgeld, Gruber "Einstieg in Java", Carl Hanser Verlag, 1996 java.sun.com; gk/

19 Verzweigung if... else Anweisungen Wie in den meisten Programmiersprachen üblich, bietet Ihnen die if Anweisung die Möglichkeit, innerhalb Ihres Programms Entscheidungen zu treffen. if (cpuSpeed < 500) System.out.println(Are things a bit slow?);

20 Verzweigung if... else Anweisungen Innerhalb der if Anweisung können Sie auch mehr als eine Test Bedingung angeben, z.B.: if ((cpuSpeed < 500) && (memorySize < 64)) System.out.println(Whats the name of this computer? Snail? Or earthworm?);

21 Verzweigung if... else Anweisungen Mit Hilfe der else Anweisung kann auch auf den zweiten Fall, dass nämlich die Bedingung nicht erfüllt ist, reagiert werden. if (cpuSpeed < 500) System.out.println(Perhaps you should bye a faster cpu or overclock your existing one?); else System.out.println(Cpus cant never be fast enough but in this case we turn a blind eye.);

22 Verzweigung if... else Anweisungen Sie können auch mehrere else Klauseln verwenden: if (cpuSpeed <= 100) System.out.println(Sorry for the delay, but with your cpu it needs some time to print this message out.); else if (cpuSpeed <= 500) System.out.println(Ok, lets rock.); else System.out.println(Ooups, already finished. What the bloody hell was that?);

23 Verzweigung Blockanweisungen Eine Folge von Anweisungen kann zu einem Anweisungsblock zusammengefasst werden. Dieser Block verhält sich dann wie eine einzelne Anweisung. if (day == Sunday) tidyUpComputer (); if (day == Sunday) { clearTempDirectory(); makeBackup (); scanDisk(); }

24 Verzweigung Der Bedingungsoperator Der Bedingungs Operator bietet eine Abkürzung für mehrere if... else Anweisungen. if (modemSpeed <= 28800) message = One bit... and another one...; else message = Just slippy.; System.out.println (message); string message = modemSpeed <= ?One bit... and another one... : Just slippy. System.out.println (message);

25 Verzweigung Der Bedingungsoperator Die allgemeine Syntax lautet: test ? true result : false result

26 Verzweigung Die switch Anweisung Das switch... case Konstrukt erlaubt eine kürzere Schreibweise für mehrere if... else Anweisungen. if ( colorDepth == 16 ) System.out.println (EGA Graphics is not supported. You need at least colors.); else (if colorDepth == 256 ) System.out.println (Standard VGA Graphics is not supported. You need at least colors.); else (if colorDepth == ) System.out.println (Your color depth is just adequate, but true color would be much better.); else (if colorDepth == ) System.out.println (Ok, you fullfill all the color requirements.);

27 Verzweigung Die switch Anweisung Dies kann durch folgenden, wesentlich übersichtlicheren Programmkode ersetzt werden: switch (colorDepth) { case 16:System.out.println (EGA Graphics is not supported. You need at least colors.);break; case 256:System.out.println (Standard VGA Graphics is not supported. You need at least colors.); break; case 65536:System.out.println (Your color depth is just adequate, but true color would be much better.);break; case :System.out.println (Ok, you fullfill all the color requirements.); }

28 Verzweigung Die switch Anweisung Beachten Sie, dass sich am Ende einer jeden case Klausel eine break Anweisung befindet. Werden die break Anweisungen nicht eingefügt und die Farbtiefe beträgt 16, dann werden alle vier Meldungen ausgegeben. Die break Anweisung stellt sicher, dass das Programm die switch Anweisung verlässt, wenn eine erfüllte Bedingung gefunden wurde

29 Verzweigung Die switch Anweisung Sie können am Ende (vor der schließenden } Klammer) noch eine default Klausel angeben. Diese wird ausgeführt, wenn keine der case Bedingungen erfüllt ist: default: System.out.println (Unknown color depth);

30 Schleifen Schleifen erlauben es, einen Block mit Programmkode mehrere Male zu wiederholen. In Java gibt es drei Arten von Schleifen: while Schleifen do... while Schleifen for Schleifen

31 while Schleifen while Schleifen bestehen aus zwei Teilen, dem Schleifenkörper und einer vorangestellten Bedingung. Solange die Bedingung erfüllt ist, wird der Schleifenkörper ausgeführt. count = 0; while (count < 10) { System.out.println (count is + count); count ++; }

32 while Schleifen Der while Ausdruck kann auch mehrere Testbedingungen enthalten, wie z.B.: count = 0; theend = false; while ((count < 10) && (theend == false)) { System.out.println (count is + count); count ++; theend = instream.read();// read a character }

33 do... while Schleifen Dem Schleifenkörper wird die do Anweisung und eine öffnende Klammer vorangestellt. Die while Anweisung folgt der schließenden Klammer am Ende des Anweisungsblocks. count = 0; theend = false; do { System.out.println (count is + count); count ++; theend = instream.read();// read a character } while ((count < 10) && (theend == false))

34 for Schleifen Die for Schleifen bieten einen einfachen Weg, das Erhöhen bzw. Verringern eines Wertes zu realisieren. Die for Schleife besteht aus drei in runden Klammern eingeschlossenen Komponenten, gefolgt vom Schleifenkörper. for (count = 0; count < 10; count ++) { System.out.println (count is + count); }

35 Schleifen verlassen Unter Benutzung der Anweisungen break und continue können Sie eine Schleife verlassen, bevor sie vollständig durchlaufen wurde (z.B. wenn ein Fehler aufgetreten ist und es keine Möglichkeit der Fortsetzung gibt). count = 0; do { newchar = instream.read ();// read a character if (newchar == \n) break; System.out.println (count is + count); count ++; } while (count < 10)

36 Schleifen verlassen Wird anstatt der break Anweisung continue verwendet, so ignoriert das Programm den Rest der Anweisungen im Schleifenkörper und geht sofort wieder an den Beginn der Schleife. endOfLoop: for (c1=0; c1<10; c1++) { for (c2=0; c2<50; c2++) { newchar = instream.read ();// read a character if (newchar == \0) break enfOfLoop; System.out.println (newchar); } System.out.println (\n);} System.out.println (The end);


Herunterladen ppt "Programmieren mit JAVA JAVA? Um herauszufinden ob diese Programmiersprache für Sie geeignet ist, zeigen Sie bitte auf das Bild, welches Ihre gegenwärtigen."

Ähnliche Präsentationen


Google-Anzeigen