Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Programmieren mit JAVA Teil IV. Hauptbestandteile der Sprache Token Typen Ausdrücke und Operatoren Anweisungen Klassen Methoden Schnittstellen Pakete.

Ähnliche Präsentationen


Präsentation zum Thema: "Programmieren mit JAVA Teil IV. Hauptbestandteile der Sprache Token Typen Ausdrücke und Operatoren Anweisungen Klassen Methoden Schnittstellen Pakete."—  Präsentation transkript:

1 Programmieren mit JAVA Teil IV

2 Hauptbestandteile der Sprache Token Typen Ausdrücke und Operatoren Anweisungen Klassen Methoden Schnittstellen Pakete

3 Vererbung Um eine neue Klasse aus einer bestehenden abzuleiten, ist im Kopf der Klasse mit Hilfe des Schlüsselworts extends ein Verweis auf die Basisklasse anzugeben Hierdurch erbt die abgeleitete Klasse alle Eigenschaften der Basisklasse (Variable und Methoden) Bsp.: class Cabrio extends Auto { int vdauer; Cabrio kfz1 = new Cabrio(); kfz1.name = "MX5"; kfz1.erstzulassung = 1994; kfz1.leistung = 115; kfz1.vdauer = 120; System.out.println("Alter = "+kfz1.alter()); }

4 Zugriff auf geerbte Membervariable Eine abgeleitete Klasse erbt jeweils die Eigenschaften der unmittelbaren Vaterklasse, die ihrerseits die Eigenschaften ihrer unmittelbaren Vaterklasse erbt Bsp.: class ZweisitzerCabrio extends Cabrio { boolean notsitze; ZweisitzerCabrio kfz1 = new ZweisitzerCabrio(); kfz1.name = "911-T"; kfz1.erstzulassung = 1982; kfz1.leistung = 94; kfz1.vdauer = 50; kfz1.notsitze = true; System.out.println("Alter = "+kfz1.alter()); }

5 Methodenüberlagerung Neben den Membervariablen erbt eine abgeleitete Klasse auch die Methoden ihrer Vaterklasse Es dürfen auch bereits von der Vaterklasse geerbte Methoden neu definiert werden. In diesem Fall spricht man von Überlagerung der Methode Bsp.: class ZweisitzerCabrio extends Cabrio { boolean notsitze; public int alter() { return 12 * ( erstzulassung); } }

6 Klassenvariablen Variablen, die innerhalb einer Klasse mit dem Attribut static versehen werden, nennt man Klassenvariablen Im Gegensatz zu den Instanzvariablen existieren Klassenvariablen unabhängig von einem Objekt Jede Klassenvariable wird nur einmal angelegt und kann von allen Methoden der Klasse aufgerufen werden Klassenvariablen sind daher vergleichbar mit globalen Variablen Bsp.: Instanzenzähler in eine Klasse

7 Beispiel Klassenvariable public class Testauto { static private int objcnt = 0; public Testauto() { ++objcnt; } public void finalize() { --objcnt; } public static void main(String args[]) { Testauto auto1; Testauto auto2 = new Testauto(); System.out.println("Anzahl Testauto-Objekte: " + Testauto.objcnt); } }

8 Klassenmethoden Methoden, die unabhängig von einer bestimmten Instanz existieren Klassenmethoden werden ebenfalls mit Hilfe des static-Attributs deklariert Klassenmethoden besitzen keinen this-Zeiger Klassenmethoden werden häufig da eingesetzt, wo Funktionalitäten zur Verfügung gestellt werden, die nicht datenzentriert arbeiten oder auf primitiven Datentypen operieren Bsp. 1: Die Klasse System ist eine Art Toolbox, die Funktionen wie Aufruf des Garbage Collectors oder Beenden des Programms zur Verfügung stellt Bsp. 2: Methoden der Klasse Math, die eine große Anzahl an Funktionen zur Fließkomma-Arithmetik zur Verfügung stellt

9 Beispiel Klassenmethoden Das folgende Listing zeigt die Verwendung der Klassenmethode sqrt der Klasse Math zur Ausgabe einer Tabelle von Quadratwurzeln public class WurzelX { public static void main(String[] args) { double x, y; for (x = 0.0; x <= 10.0; x = x + 1.0) { y = Math.sqrt(x); System.out.println("sqrt("+x+") = "+y); } } }

10 Interfaces Ein Interface ist eine besondere Form einer Klasse, die ausschließlich abstrakte Methoden und Konstanten enthält Anstelle von class wird zur Definition eines Interfaces das Schlüsselwort interface verwendet Was bei der Vererbung von Klassen als Ableitung bezeichnet wird, nennt man bei Interfaces Implementierung Durch das Implementieren eines Interfaces verpflichtet sich die Klasse, alle Methoden, die im Interface definiert sind, zu implementieren Die Implementierung eines Interfaces wird durch das Schlüsselwort implements bei der Klassendefinition angezeigt

11 public interface Fortbewegungsmittel { public int kapazitaet(); public double kilometerPreis(); } public class Auto implements Fortbewegungsmitte { public String name; public int erstzulassung; public int leistung; private int anzahlSitze; private double spritVerbrauch; private double spritPreis; public double kapazitaet() { return anzahlSitze; } public double kilometerPreis() { return spritVerbrauch*spritPreis/100; } }

12 Pakete 1 java.applet Applets java.awt Abstract Windowing Toolkit java.awt.color Unterstützung für unterschiedliche Farbsysteme java.awt.datatransfer AWT Clipboard-Funktionen java.awt.dnd Drag & Drop java.awt.font Erweiterte Unterstützung für Schriftarten java.awt.geom 2D-Bildverarbeitung java.awt.im Eingabe von fernöstlichen Schriftzeichen java.awt.image AWT-Bildverarbeitung java.awt.image.renderable Darstellungsunabhängige Bildverarbeitung java.awt.print Druckausgabe java.beans Java Beans java.beans.beancontext Java Beans-Unterstützung java.io Bildschirm- und Datei-I/O java.lang Elementare Sprachunterstützung java.lang.reflect Reflection-API java.lang.ref Referenz-Objekte

13 Pakete 2 java.math Fließkomma-Arithmetik java.net Netzwerkunterstützung java.rmi Remote Method Invocation (RMI) java.rmi.dgc RMI Distributed Garbage Collection java.rmi.registry RMI Service Registry java.rmi.server RMI-Support java.security Security-Dienste java.security.acl Access Control Lists java.security.cert Zertifikate java.security.interfaces DSA-Interfaces java.security.spec Sicherheitsspezifikationen java.sql Datenbankzugriff (JDBC) java.text Internationalisierung java.util Diverse Utilities und Datenstrukturen java.util.jar Zugriff auf JAR-Files java.util.mime Multipurpose Internet Mail Extensions (MIME) java.util.zip Zugriff auf ZIP-Files


Herunterladen ppt "Programmieren mit JAVA Teil IV. Hauptbestandteile der Sprache Token Typen Ausdrücke und Operatoren Anweisungen Klassen Methoden Schnittstellen Pakete."

Ähnliche Präsentationen


Google-Anzeigen