Einführung In Die OOP In Java 6 WS 07/08

3y ago
119 Views
6 Downloads
1.27 MB
119 Pages
Last View : 5d ago
Last Download : 3m ago
Upload by : Ronan Garica
Transcription

Einführung in die OOP in Java 6WS 07/08Ashraf Abu BakerZuletzt aktualisiert am: 09.06.2008 15:321

Ich bedanke mich bei Igor Geier und Gerold Kühne fürihre Unterstützung bei der Erstellung dieses Begleitmaterials.2

InhaltsverzeichnisInhaltsverzeichnis . 31 Einleitung. 52 Historie . 63 Entwicklung von Java-Programmen . 93.1 Vorbereitung . 93.2 Klassendefinition . 93.3 Kommentare. 103.4 Applikationen vs. Applets. 114 Grundlagen. 124.1 Java-Bezeichner (identifier). 124.2 Variablen und Datentypen . 124.2.1 Deklaration und Initialisierung . 154.2.2 Wrapper-Klassen. 164.2.3 Arithmetik- und Fließkommaprobleme . 164.3 Typkonvertierung und Casting . 184.4 Autoboxing (boxing/unboxing) . 205 Arrays. 205.1 Definition . 215.2 Irreguläre Arrays . 225.3 Zugriff auf Arrays . 236 Kontrollstrukturen . 246.1 if-else. 246.2 switch . 256.3 Schleifen . 266.3.1 while-Schleife . 266.3.2 do while-Schleife . 286.3.3 for-Schleife . 296.3.4 for-each-Schleife . 306.4 break und continue. 317 Grundkonzepte OOP. 347.1 Klassen und Objekte . 347.2 Klassen in Java. 347.3 Methoden und Konstruktoren . 357.4 Überladen von Methoden. 367.5 Vererbung . 387.6 Überschreibung von Methoden. 407.7 Polymorphismus . 418 Java-spezifische Konzepte . 438.1 Referenzen in Java . 438.2 this, super, this() und super() . 448.3 Klassenvariablen (statische Variablen). 458.4 Statische Methoden (Klassenmethoden). 478.5 Die main-Methode . 478.6 Statische Initialisierer. 478.7 Nicht statische Initialisierer . 488.8 Initialisierungsreihenfolge . 488.9 Call-by-reference oder call-by-value? . 503

8.10 Pakete (packages). 518.11 Import. 528.12 Statischer Import. 538.13 Datenkapselung und Modifier . 538.13.1 public. 548.13.2 private . 548.13.3 default . 548.13.4 protected. 548.13.5 final . 579 Abstrakte Klassen und Methoden . 5810 Interfaces. 6110.1 Das Interface Comparable. 6211 Namenskonventionen. 6412 Object, Math und String. 6512.1 Object . 6512.2 Math . 6712.3 String . 6713 Ausnahmen (Exceptions) . 7213.1 Throwable . 7413.2 Ausnahmetypen. 7413.3 Auslösen einer Exception . 7713.4 Weitergabe von Exceptions . 7713.5 Behandlung von mehreren Ausnahmen . 7813.6 finally . 7813.7 Eigene Exception-Klasse deklarieren . 7914 Generics . 8015 Collections (Sammlungen). 8515.1 Listen. 8615.1.1 ArrayList und Vector . 8815.1.2 LinkedList . 8915.2 Mengen (Sets) . 9015.2.1 HashSet . 9015.2.2 LinkedHashSet. 9115.2.3 TreeSet . 9115.3 Tabellen (Maps) . 9215.3.1 HashMap und Hashtable . 9415.3.2 TreeMap . 9415.3.3 LinkedHashMap . 9515.4 Generische Collections . 9615.5 Iteratoren (Iterator). 9716 I/O . 9916.1 Dateien und Verzeichnisse. 9916.2 Wahlfreier Zugriff auf Dateien (RandomAccessFile) . 10216.3 Streams. 10416.3.1 ByteStreams . 10416.3.2 FileReader . 10516.3.3 BufferedReader . 10616.3.4 FileWriter. 10716.3.5 BufferedWriter. 10817 Applets . 10918 AWT/Swing . 1174

1 EinleitungJava ist eine von der Firma Sun Microsystems entwickelte Technologie, die aus einer modernenobjektorientierten Programmiersprache und einer Plattform besteht.Eine Plattform ist eine Hardware- oder Softwareumgebung, in der Programme gestartet und ausgeführtwerden können. In vielen Fällen kann eine Plattform als das Betriebssystem und die darunter liegendeHardware verstanden werden. Zu den bekanntesten Plattformen zählen Microsoft Windows, Linux,Mac OS und Solaris. Die Java-Plattform unterscheidet sich von den meisten Plattformen dadurch, dasssie nur eine Software-Plattform ist, und auf der Spitze einer hardwarebasierten Plattform läuft. Siebesteht aus der Java-API (Java Application Programming Interface) und der Java-VM (Java VirtualMachine).Abbildung 1: Java-PlattformDie Java-API ist eine große Sammlung von Java-Programmen, die in sog. Pakete (packages) aufgeteiltsind. Pakete sind vergleichbar mit Bibliotheken in anderen Programmiersprachen und umfassen u.a.Klassen- und Schnittstellendefinitionen (interfaces).Abbildung 2: Dokumentation zur Java-API5

Die Java-VM ist eine plattformunabhängige Softwareumgebung, die Java-Bytecode interpretiert, inMaschinensprache übersetzt und ausführt. Sie kann als Interpretier- und Ausführungsumgebung fürBytecode verstanden werden. Der Bytecode ist eine Datei, die die Erweiterung „.class“ hat. Sieentsteht, wenn ein Java-Compiler ein Java-Programm kompiliert und übersetzt. Ein Bytecode ist daseinzige Codeformat, das von der virtuellen Maschine interpretiert und ausgeführt werden kann.Abbildung 3: Bytecode/JVMDa Java-Programme von der JVM und nicht direkt von der Hardware ausgeführt werden, sind sieplattformunabhängig.6

2 HistorieDie Geschichte der Java-Plattform begann im Januar 1996 als Sun Microsystems das JavaDevelopment Kit (JDK) 1.0 herausgegeben hat. Dieses JDK bestand aus einer Klassenbibliothek,einem Compiler und einem Interpreter. Die Klassenbibliothek des JDK 1.0 bestand aus lediglich sechsPaketen: java.applet mit den Basisklassen für Applets, java.awt für grafische Oberflächen, java.io mitI/O-Funktionen, java.lang, das den Kern der Sprache bildet, java.net mit Klassen zurNetzwerkkommunikation sowie java.util mit nützlichen Hilfsklassen.1997 trennte Sun den Interpreter vom JDK und gab eine neue Version (1.1) des JDK und eineLaufzeitumgebung (Java Runtime Environment (JRE)) heraus. Die JRE enthält alle zum Ausführenvon Programmen notwendigen Werkzeuge.Neu in dieser Version war die Entwicklung der Remote Methode Invocation (RMI), die Java DatabaseConnectivity (JDBC) und das AWT. Die RMI ist eine Schnittstelle, die eine einfache Verteilung vonJava-Programmen erlaubt. JDBC ist eine Schnittstelle zum Datenbankzugriff. Das AWT ist eineBibliothek zur Gestaltung von graphischen Oberflächen.Da das AWT viele Probleme mit sich brachte, entwickelte Sun 1998 eine neue API zur Erstellung vongraphischen Oberflächen namens Swing und gab damit die Version 1.2 cles/RoadMaps/Features/Im Jahre 2000 brachte Sun die Version 1.3 auf den Markt, die u.a. das Servlet Development Kit und dieHotSpot Virtual Machine enthielt. Servlets sind Java-Programme, die in einem Web-Server laufen undWeb-Seiten dynamisch tes/features.html2002 wurde Version 1.4 herausgegeben. Zu den wichtigsten funktionalen Erweiterungen dieserVersion zählen die API für XML-Processing und eine neue API für schnelle I/O-Zugriffe auf es/features.htmlIm JDK 1.5 vom Jahre 2004 wurde die Syntax der Programmiersprache erweitert und neue wichtigeKonzepte wie Generics, Boxing/Unboxing sowie Aufzählungstypen und Annotationen lnotes/features.htmlDie aktuellste Version des JDK, auf die sich diese Einführung bezieht, ist die Version 1.6. Sie wurdeEnde 2006 herausgegeben und brachte viele Neuerungen in den Bereichen Web Services, Sicherheit,Datenbanken, etc. gegenüber ihrer Vorgängerversion mit sich. Darüber hinaus bietet sie zahlreicheKlassen zum Einbetten von Skripten in Skriptsprachen wie Articles/J2SE/Desktop/javase6/beta2.htm7

210ca. 061.62023777Neue FeaturesApplets, AWT, I/O, NetRMI, JDBC, Swing, IDL,Collections, CORBA ORB, Sound,JNDI, Servlets XML Processing, JNI, Generics, Enhanced forLoop, Autoboxing,Enums, Annotations Scripting, CompilerAccess, DesktopDeployment Tabelle 1: JDK-Entwicklung8

3 Entwicklung von Java-Programmen3.1 VorbereitungZur Entwicklung von Java-Programmen wird das Java Development Kit und in der Regel eineEntwicklungsumgebung benötigt. Eine Entwicklungsumgebung ist eine Sammlung von komplexenProgrammiertools zur Entwicklung von Software-Produkten und Programmen. Die während desKurses eingesetzte Entwicklungsumgebung heißt Eclipse. Sie kann von der folgenden Internet-Seiteheruntergeladen werden: www.eclipse.orgDas JDK 6.0 kann von der Sun-Seite unter der folgenden Adresse heruntergeladen jsp3.2 KlassendefinitionEine Java-Quellcodedatei besteht aus höchstens einer public-Klassendefinition, genannt public toplevel class definition, und einer unbeschränkten Anzahl von nicht public-Klassendefinitionen (nonpublic top level class definitions), die in einer Java-Quelldatei gespeichert werden. Java-Quelldateiensind Unicode-Dateien, die mit der Erweiterung „.java“

besteht aus der Java-API (Java Application Programming Interface) und der Java-VM (Java Virtual Machine). Abbildung 1: Java-Plattform Die Java-API ist eine große Sammlung von Java-Programmen, die in sog. Pakete (packages) aufgeteilt sind. Pakete sind vergleichbar mit Bibliotheken in anderen Programmiersprachen und umfassen u.a.

Related Documents:

Some OOP features can be implemented in C or other procedural programming languages, but not enforced by these languages OOP languages: OOP concepts are embeded in and enforced by the languages. OOP Concepts 29 OOP languages vary in degrees of object-oriented Pure: Smalltalk, Eiffel, Ruby, JADE. Original OO plus some procedural features .

Einf uhrung in die Wahrscheinlichkeitstheorie und Statistik im SS2012 { Kurzskript Prof. Dr. C. L oh Sommersemester 2012 Inhaltsverzeichnis-1 Literaturhinweise 2 . Stochastik: Theorie und Anwendungen, Springer, 2005.und viele weitere B ucher; je nach eigenen Vorlieben werden Ihnen manche B ucher besser gefallen als andere. Weiterf uhrende .

Jan 11, 2020 · 3rd edition (1999) OOP need to check ask 1725 MechWarrior's Guide to the Clans 3rd edition (1999) OOP need to check 10975 Classic BattleTech Companion 3rd edition (1999) OOP 35008 A Guide to Covert Ops 3rd edition (1999) OOP BattleTech by Catalyst 14

9/5/22 Compsci 201, Fall 2022, OOP 3. Recapping some Java Themes 9/5/22 Compsci 201, Fall 2022, OOP 4. Comments on Java Style Code blocks: Opening {ends first line of if, for, while, or method . Aside: Python uses objects too 9/5/22 Compsci 201, Fall 2022, OOP 15 Split is a methodwe are calling on this String object, not a

OOP IntroductionType & SubtypeInheritanceOverloading and OverridingTemplateDynamic BindingOO-language ImplementationSummary OOP (Object Oriented Programming) So far the languages that we encountered treat data and computation separately. In OOP, the data and computation are combined into an "object". 1/55

OOP expenditure, the proportion of OOP . payments to total expenses per visit ("OOP share") for all facilities was higher for outpatient care (99 percent) than for inpatient care (80 percent). Interestingly, the OOP share for inpatient care was close to the same whether the patient attended a public or a private facility, 79 percent for private

1 1: oop 2 2 Examples 2 2 OOP 2 Intoduction 2 OOP 2 Java 3 C 3 3 Java 3 C 3 3 3 4 5 6 2: 7 Examples 7 7 7 8 3: 9 Examples 9 9 4: 10 Examples 10 10 5: 11

Kopieer die prente van Jesus en die wolk op ander karton en sny dit rofweg uit. Pons gaatjies oral waar sirkels aangedui is. Plak die middelpunt van die tou vas aan die agter-kant van die prent van Jesus. Die twee punte van die toue gaan deur die gaatjies aan die bo- en onderkante van die karton