Assoziationen (Beziehungen) 1 : n. Zu einem Auto gibt es mehrere Fahrer (2) und zu diesen 2 Fahrern gibt es genau dieses Auto.

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

der Universität Oldenburg
DVG Einfache Klassen Einfache Klassen. DVG Einfache Klassen 2 Strukturen Beispiel: Personendaten bestehen aus –String name –String vorname.
Einführung in die Programmierung Ausführbare Klassen
Progwerkstatt JAVA Klasse, Objekte, Konstruktoren, Methoden
Daten Anzeigen und Ausdrucken Zu Zeigende Daten (z.B. Studentenplan) Daten in XML müssen geparst und in PDF- Format umgewandelt werden. Dazu iTEXT Bibliothek.
Java: Objektorientierte Programmierung
Listen Richard Göbel.
Java: Grundlagen der Sprache
Java: Grundlagen der Objektorientierung
FH-Hof Fehlerbehandlung Richard Göbel. FH-Hof Konzept Fehler können mit dem Operator throw einer übergeordneten Funktion signalisiert werden. Parameter.
Verzweigung oder bedingte Anweisung Weiter mit PP.
Abstrakte Klassen.
IF-ELSE-IF-Ketten Weiter mit PP..
Ein Beispiel in Java.
Erweiterte Zuweisungskompatibilität
Klassenvariable. Da man für jede Kuh bzw. jede Henne auf dem Markt den gleichen Preis für ein Liter Milch, bzw. den gleichen Preis für ein Ei bekommt,
Konstruktoren.
Objekte werden als Adressen (Referenzen) übergeben. Dies führt manchmal zu unerwarteten Ergebnissen...
WHILE - Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
Polymorphie (Vielgestaltigkeit)
Assoziationen (Beziehungen). Zwischen Objekten kann es eine Beziehung geben.
Polymorphie (Vielgestaltigkeit)
Objekte und Arbeitsspeicher
Interface bzw. Schnittstelle anschaulich: Hüllenklasse
FOR Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
DO...WHILE Anweisung.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 4 Vererbung Sommersemester 2003 Lars Bernard.
Java-Kurs - 2. Übung Entwicklungsumgebung Struktur von Programmen
Programmieren mit JAVA
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Vorwoche Programm besteht aus mehreren Bestandteilen: Schlüsselwörter Sonderzeichen Bezeichner Kommentare Texte.
Zusammenfassung Vorwoche
1DVG3 - anonyme Klassen Anonyme Klassen. DVG3 - anonyme Klassen 2 Syntax new BasisKlasse(Parameterliste) { Modifikationen und Erweiterungen der Basisklasse.
DVG Einführung in Java1 Einführung in JAVA.
DVG Einfache Klassen 1 Einfache Klassen. 2DVG Einfache KlassenStrukturen Beispiel: Personendaten bestehen aus String name String name.
05 - Reflection Das Reflection API Reflection2 Ziel Es kommt vor, dass eine Methode ein Objekt als Parameter übergeben bekommt, ohne dass bekannt.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
© 2005 Pohlig - Taulien Datenströme GK Informatik 1 Datenströme.
Thema: Fibonacci-Zahlen
Bestimmung des ggT zweier Zahlen
Vererbung Einfache Vererbung – Erben von abstrakten Klassen – Implementieren eines Interfaces.
© 2003 Pohlig Informatikgrundkurs (Pohlig-Häberle) 1 5.Was ist eine Syntax? – Ein bierseliger Bayer im Himmel 5.1 Syntax des frohlockenden Bayern Alois.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Objektorientierte Modellierung
Rekursive Funktionen (Fakultät)
Objektorientiertes Konstruieren
Die Klasse String und ihre Methoden
CuP - Java Neunte Vorlesung Entspricht Kapitel 4.2 und 5 des Skriptums
Learning By Doing Ausnahmebehandlung Exceptions (Ausnahmebehandlung) Typische Fehlverhalten zur Laufzeit: s. Buch S. 287ff -Verwendung von null-Objekten.
Programmierung von Agenten in Java: Implementierung einer Supply-Chain
Programmiervorkurs WS 2014/15 Methoden
Programmiervorkurs WS 2014/15 Schleifen
Programmiervorkurs WS 2014/15 Instanzmethoden
Programmiervorkurs WS 2014 Referenzdatentypen
CuP - Java Achte Vorlesung Entspricht ungefähr Kapitel 4.1 des Skriptums Montag, 28. Oktober 2002.
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
Natürliches Programmieren
Java-Kurs - 3. Übung Hausaufgabe Arrays For-Schleifen.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
A Workshop About this chapter General description Units Time Schedule
Java Programme nur ein bisschen objektorientiert.
Tutorium Software-Engineering SS14 Florian Manghofer.
Konstruktoren.
Mit der Turtle Java Programmieren
Grundkurs Informatik mit Java
Mit Java die Turtle steuern
Arrays in Java Ein Array ist eine Variable, die aus einer An-zahl von Elementen des gleichen Datentyps besteht, die aufeinanderfolgend im Speicher liegen.
Ein Referat von Sabrina Vissel, darleen paul und yannick fuchs
 Präsentation transkript:

Assoziationen (Beziehungen) 1 : n

Zu einem Auto gibt es mehrere Fahrer (2) und zu diesen 2 Fahrern gibt es genau dieses Auto.

In UML wird dies wie folgt dargestellt

AutoFahrer 1 2 Beziehungspfeil; Navigation unidirektional; also nur in eine Richtung: vom Auto zum Fahrer Kardinalitäten (zu einem Auto gibt es 2 Fahrer und zu diesen 2 Fahrern gibt es genau dieses eine Auto)

Wie kann dies in Java umgesetzt werden?

Bemerkung: Zwecks übersichtlicher Darstellung werden nicht benutzte get- und set- Methoden weggelassen.

class Auto{ public String kfzZ; public Fahrer[] seineFahrer; public void setKfzZeichen( String pKfzZ){ kfzZ = pKfzZ; } Mit diesem Attribut kommt man vom Auto zu seinen Fahrern Kfz-Zeichen Die Fahrer des Autos

class Fahrer{ public String name; public void setName( String pName){ name = pName; } Da man vom Fahrer nicht zum Auto kommen muss, braucht man auch kein Attribut, mit dem man zum Auto des Fahrers kommt. Name des Fahrers

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; Wie erstellt man ein Array der Länge 2?

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; Wie erstellt man das 1. Element des Arrays? dieFahrer[0]=new Fahrer();

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; Wie erstellt man das 2.Element des Arrays? dieFahrer[0]=new Fahrer(); dieFahrer[1]=new Fahrer();

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; Wie gibt man dem 1. Fahrer den Namen Maier dieFahrer[0]=new Fahrer(); dieFahrer[1]=new Fahrer(); dieFahrer[0].setName("Maier");

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; Wie gibt man dem 2. Fahrer den Namen Müller dieFahrer[0]=new Fahrer(); dieFahrer[1]=new Fahrer(); dieFahrer[0].setName("Maier"); dieFahrer[1].setName("Müller");

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; Wie erstellt man ein Auto? dieFahrer[0]=new Fahrer(); dieFahrer[1]=new Fahrer(); dieFahrer[0].setName("Maier"); dieFahrer[1].setName("Müller"); Auto myCar = new Auto();

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; Wie gibt man dem Auto das Kfz-Kenzeichen B-KI 11? dieFahrer[0]=new Fahrer(); dieFahrer[1]=new Fahrer(); dieFahrer[0].setName("Maier"); dieFahrer[1].setName("Müller"); Auto myCar = new Auto(); myCar.setKfzZeichen("B-KI 11");

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; Wie verlinkt man das Auto mit den Fahrern? dieFahrer[0]=new Fahrer(); dieFahrer[1]=new Fahrer(); dieFahrer[0].setName("Maier"); dieFahrer[1].setName("Müller"); Auto myCar = new Auto(); myCar.setKfzZeichen("B-KI 11"); myCar.seineFahrer = dieFahrer;

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; dieFahrer[0]=new Fahrer(); dieFahrer[1]=new Fahrer(); dieFahrer[0].setName("Maier"); dieFahrer[1].setName("Müller"); Auto myCar = new Auto(); myCar.setKfzZeichen("B-KI 11"); myCar.seineFahrer = dieFahrer; System.out.println("1. Fahrer = " +myCar.seineFahrer[0].name); Wie gibt man (vom Auto ausgehend) den Namen des 1. Fahrers auf dem Bildschirm aus?

public class MainAssoziationUNI_1zuN_1 { public static void main(String[] args){ Fahrer[] dieFahrer = new Fahrer[2]; dieFahrer[0]=new Fahrer(); dieFahrer[1]=new Fahrer(); dieFahrer[0].setName("Maier"); dieFahrer[1].setName("Müller"); Auto myCar = new Auto(); myCar.setKfzZeichen("B-KI 11"); myCar.seineFahrer = dieFahrer; System.out.println("1. Fahrer = " +myCar.seineFahrer[0].name); Wie gibt man (vom Auto ausgehend) den Namen des 2. Fahrers auf dem Bildschirm aus? System.out.println("2. Fahrer = " +myCar.seineFahrer[1].name);

Damit wurde nun eine Möglichkeit der Verlinkung gezeigt. Lösen Sie bitte die entsprechenden Übungsaufgaben dazu.