Folienpaket 7 Themenschwerpunkte: Methoden in OOP /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

Größe: px
Ab Seite anzeigen:

Download "Folienpaket 7 Themenschwerpunkte: Methoden in OOP /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4"

Transkript

1 Folienpaket 7 Themenschwerpunkte: Methoden in OOP /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

2 Eine Klasse entwerfen Eine Klasse enthält folgende Information: Name der Klasse (ist auch der Dateiname) Deklaration der Attribute (Datentyp plus Variablenname) Deklaration der Methoden (Signatur plus Programmcode) Modifikatoren Ein Objekt oder ein Exemplar oder eine Instanz ist der Wert, den eine Klasse haben kann. Objekte werden mit new erzeugt. Styleguide: Klassen groß schreiben, Objekte/Attribute/Methoden klein /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

3 Ein Beispiel mit Methoden Student.java class Student { int nummer; char geschlecht; String name; byte alter; void neuenummer(int n) { nummer = n; void setzenamen(string s) { name = s; void geburtstag() { alter++; MeinProgramm.java class MeinProgramm { public static void main(string[] args) { Student s = new Student(); s.setzenamen("daniel Haase"); s.geburtstag(); /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

4 Idee der Methode Idee: Objekte bringen Programmcode zu ihrer Verwaltung selbst mit. Eine Methode ist ein benanntes Programmstück, das eine bestimmte Aufgabe zu bestimmten Bedingungen erfüllen soll. Unterschied zum Begriff der Funktion in der Mathematik: Eine Methode stellt keinen funktionalen Zusammenhang zwischen ihrer Ein- und Ausgabe her, sondern führt aktiv Befehle aus. Methoden können Werte berechnen, Attribute des Objekts verändern, neue Objekte erzeugen etc /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

5 Idee der Methode Methoden können innerhalb oder außerhalb des Objekts aufgerufen werden durch den Namen und runde Klammern: Einfacher Aufruf: Objekt.Methodenname(); führt die Methode aus, beispielsweise s.geburtstag(); Aufruf mit Parametern: Objekt.Methodenname(Werte ); führt die Methode mit vorgegebenen Parametern aus, beispielsweise System.out.println( ); mit einem String als Parameter. Aufruf mit Rückgabewerten: Variable = Objekt.Methodenname(); Der Methodenaufruf produziert ein Ergebnis welches in der Variable abgelegt wird. Beispiel: double y = Math.sin(3.142); Falls kein Objekt gegeben ist, sucht Java die Methode in der Klasse bzw. dem Objekt, in dem die Methode aufgerufen wurde /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

6 Beispiel Der Raumvektor erhält eine tostring-methode: class Raumvektor { double x, y, z; // Die Koordinaten public String tostring() { return "(" + x + "," + y + "," + z + ")"; Typischer Aufruf der Methode: Raumvektor v = new Raumvektor(); String s = v.tostring(); System.out.println(s); Idee: Es ist Aufgabe des Vektors, sich selbst auszugeben. Aber es ist Entscheidung des Aufrufers, wo der Ausgabestring hingeht /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

7 Methoden schreiben Der Programmcode einer Klasse wird in Methoden organisiert. Eine Methode besteht aus Der Signatur: Das ist die einleitende Zeile, in der die Eigenschaften der Methode festgelegt werden. Dem Körper oder Rumpf: Hier steht in Mengenklammern der Programmtext der Methode. public double produkt(double a, double b) { double p = a * b; return p; Styleguide: Attribut- und Methodennamen klein wie Variablen /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

8 Methoden schreiben Eine Methode hat folgende Bestandteile: Die Modifikatoren der Methode, sie geben an, wie die Methode von außen verwendet werden kann. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Rückgabewert wird mit dem Befehl return gegeben. Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Hauptmethode muss den Namen main bekommen und wird immer als erstes ausgeführt. Die Parameterliste, getrennt durch Kommata. Kann auch leer sein, wenn die Methode ohne Parameter arbeitet. Den Körper mit dem Programmtext. Der Programmtext steht in Mengenklammern und darf beliebig lang sein. Diese fünf Bestandteile unbedingt auswendig lernen! /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

9 Methoden schreiben Die folgenden Modifikatoren gibt es in Java: public: Die Methode/Variable ist öffentlich sichtbar, jeder kann sie aufrufen auch außerhalb des Projekts. private: Die Methode/Variable ist nur innerhalb der eigenen Klasse sichtbar. static: Die Methode/Variable ist unabhängig vom Objekt. final: Die Methode/Variable ist nicht veränderbar.... noch viele andere, die wir aber nicht brauchen. Beispiel: final double pi = 3.142; Eine neue Zuweisung pi = 2; im Programm gibt eine Fehlermeldung! /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

10 Methoden schreiben Eine Methode hat folgende Bestandteile: Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. public static void main(string[] args) { System.out.println("Hallo"); /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

11 Methoden schreiben Eine Methode hat folgende Bestandteile: Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. public static void main(string[] args) { System.out.println("Hallo"); Diese Methode ist öffentlich sichtbar und statisch /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

12 Methoden schreiben Eine Methode hat folgende Bestandteile: Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. public static void main(string[] args) { System.out.println("Hallo"); Diese Methode gibt keinen Wert zurück /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

13 Methoden schreiben Eine Methode hat folgende Bestandteile: Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. public static void main(string[] args) { System.out.println("Hallo"); Diese Methode hat den Namen main /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

14 Methoden schreiben Eine Methode hat folgende Bestandteile: Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. public static void main(string[] args) { System.out.println("Hallo"); Diese Methode bekommt ein Feld aus Strings als Parameter /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

15 Methoden schreiben Eine Methode hat folgende Bestandteile: Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. public static void main(string[] args) { System.out.println("Hallo"); Das ist der Körper der Methode /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

16 Methoden schreiben Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. Hier ein anderes Beispiel: double summe(double a, double b) { return a + b; /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

17 Methoden schreiben Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. Hier ein anderes Beispiel: double summe(double a, double b) { return a + b; Diese Methode hat keine Modifikatoren /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

18 Methoden schreiben Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. Hier ein anderes Beispiel: double summe(double a, double b) { return a + b; Diese Methode gibt eine Zahl (double) als Ergebnis zurück /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

19 Methoden schreiben Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. Hier ein anderes Beispiel: double summe(double a, double b) { return a + b; Diese Methode hat den Namen summe /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

20 Methoden schreiben Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. Hier ein anderes Beispiel: double summe(double a, double b) { return a + b; Diese Methode bekommt zwei double s als Parameter /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

21 Methoden schreiben Die Modifikatoren der Methode. Der Rückgabetyp, ein Datentyp der zurückgegeben wird (oder void falls nichts zurückgegeben wird). Der Name der Methode, typischerweise mit Kleinbuchstaben. Die Parameterliste, getrennt durch Kommata. Den Körper mit dem Programmtext. Hier ein anderes Beispiel: double summe(double a, double b) { return a + b; Diese Methode addiert die Parameter, und gibt die Summe zurück /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

22 Methoden aufrufen Ist ein Objekt angelegt, so kann man die Methoden des Objekts mit dem Referenzpunkt aufrufen: Student s; s = new Student(); s.geburtstag(); Liefert die Methode einen Rückgabewert, so kann dieser einer Variablen zugewiesen werden (muss aber nicht): x = Math.pow(2, 8); // Rufe Methode pow auf und speichere Wert if (Math.sin(1.2) < 0) { // return-wert wird direkt verarbeitet System.out.println("Java braucht einen Mathevorkurs"); Math.random(); Die Zufallszahl wird sofort weggeworfen /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

23 Methoden aufrufen Sie haben bisher schon viele Methoden aufgerufen: System.out.println("Hallo"); Dynamische Bibliothek System, darin das Objekt out, davon die Methode println Math.pow(2.1, 2); Klasse Math, darin die statische Methode pow. String s = "Was nun?"; int a = s.length(); int[] feld = new int[10]; int b = feld.length; Dynamisch erzeugtes Feld feld, davon das Attribut length (keine Klammern keine Methode) /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

24 Methoden aufrufen Programmcode gibt es in Java nur in Methoden: Methoden bilden mit den Attributen die Klassen, mehrere Klassen bilden eine dynamische Bibliothek, ein package das von anderen Programmen verwendet werden kann, Java bietet unzählige fertige Methoden in packages an. Bisher haben wir das ignoriert, aber auch unsere Hauptmethode war immer in einer Klasse /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

25 Methoden aufrufen Das Prinzip dabei ist: Die Signatur beschreibt, was die Methode tut (Parameter, Rückgabewert, Modifikatoren), diese Information ist für jeden sichtbar. Der Körper beschreibt, wie die Methode es tut. Diese Information sieht nur der Programmierer. Vorgehen beim Programmieren: Aufgabe der Methode genau beschreiben, dann Signatur schreiben, dann den Körper /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

26 Beispiel Aufgabe ist es, den Mittelwert einer beliebigen Anzahl von Zahlen in einer Methode zu berechnen. Eingabe für die Methode: ein Feld aus double s Ausgabe der Methode: Mittelwert ist ein double Hat nichts mit Objektinhalt zu tun: Modifikator static Signatur ist also static double mittelwert(double[] x); Jetzt können wir den Körper schreiben /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

27 Aufgabe Wir wollen einen double-wert zurückgeben. Die Methode hat also diese Form: static double mittelwert(double[] x) { double m;. return m; Fügen Sie passende Codezeilen ein /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

28 Beispiel Den Mittelwert rechnen wir in einer for-schleife aus: static double mittelwert(double[] x) { double m; m = 0; for (int i = 0; i < x.length; i = i + 1) { m = m + x[i]; m = m / x.length; return m; /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

29 Anwendung der Methode MeinProgramm.java class MeinProgramm { static double mittelwert(double[] x) { double m; m = 0; for (int i = 0; i < x.length; i = i + 1) { m = m + x[i]; m = m / x.length; return m; public static void main(string[] args) { double[] werte = new double[3]; werte[0] = 1.2; werte[1] = -2; werte[2] = 0; double m = mittelwert(werte); /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

30 Methoden in Java Eine Methode fasst Programmcode zusammen, der eine bestimmte Aufgabe erfüllt, kann Parameter erhalten (muss aber nicht), kann ein Ergebnis liefern (muss aber nicht), kann beliebig oft verwendet werden, gehört zu ihrem Objekt (außer wenn statisch), kann Attribute des eigenen Objekts einsetzen (außer wenn statisch), kann andere Methoden aufrufen. Strukturierter und verständlicher Code. OO-Programme sind leicht modifizierbar und erweiterbar /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

31 Beispiele Der Vektor bekommt eine Methode, die einen Vektor hinzuaddiert: class Vektor { double x, y; public void addiere(vektor v) { x = x + v.x; y = y + v.y; Aufruf der Methode: Vektor v = new Vektor(); v.x = 1; v.y = -2; Vektor z = new Vektor(); z.x = 0; z.y = 12; v.addiere(z); // Wirkt wie v = v + z; /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

32 Beispiele Hier eine Methode, die eine Kopie vom Vektor erstellt: class Vektor { double x, y; public void addiere(vektor v) { public Vektor kopie() { Vektor k = new Vektor(); k.x = x; k.y = y; return k; Idee: Der Vektor weiß selbst, welche Bestandteile er kopieren muss /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

33 Nicht-statische Methoden Nicht-statische Methoden gehören zu einem Objekt: class Vektor { double x, y; public void addiere(vektor v) { public Vektor kopie() { Vektor k = new Vektor(); k.x = x; k.y = y; return k; Kein Referenzpunkt: Attribute innerhalb des Objekts sind gemeint /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

34 Nicht-statische Methoden Nicht-statische Methoden gehören zu einem Objekt: class Vektor { double x, y; public void addiere(vektor v) { public Vektor kopie() { Vektor k = new Vektor(); k.x = x; k.y = y; return k; Der return-befehl beendet die Methode und nimmt den Rückgabewert /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

35 Aufgabe Ergänzen Sie die Vorlage mit passendem Programmcode: class Vektor { double x, y; public void addiere(vektor v) { public Vektor kopie() { public double betrag() { /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

36 Aufgabe Ergänzen Sie die Vorlage mit passendem Programmcode: class Vektor { double x, y; public void addiere(vektor v) { public Vektor kopie() { public double betrag() { return Math.sqrt((x * x) + (y * y)); /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

37 Die Referenzvariable this Innerhalb einer (nicht-statischen) Methode gibt es die Referenz this, sie zeigt auf das Objekt, in dem die Methode gerade ausgeführt wird. Besser formuliert: this ist das Objekt, von dem aus der Aufrufer die Methode referenziert hat. Mit this können Attribute des Objekts von Parametern der Methode getrennt werden, im Styleguide wird das auch erzwungen: class Vektor { private double x, y; public void setze(double x, double y) { this.x = x; this.y = y; /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

38 Konstruktoren Eine Klasse ist ein selbst erstellter Datentyp. Mithilfe dieses Datentyps können Objekte mit dem new-befehl angelegt werden: class Vektor { double x, y; public void setzee() { x = 1; y = 0; Vektor v = new Vektor(); v.setze(1, -7); v.setzee(); /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

39 Konstruktoren Beim Erzeugen belegt Java alle Attribute mit Nullen, es sei denn ein Startwert ist vorgegeben. class Vektor { double x, y; public void setzee() { x = 1; y = 0; Das ist hier nicht sinnvoll, die Werte für die Attribute sollten vom Aufrufer eingetragen werden, so wie bei den elementaren Datentypen und den Feldern: int j = 1; char c = 'A'; boolean b = false; int[] I = { 1, 2, 3 ; /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

40 Konstruktoren Bei elementaren Datentypen ist das einfach: es gibt nur einen Wert. Objekte können aber viele Attribute mit verschiedenen Eigenschaften haben, diese können auch private sein und sind dann für den Aufrufer nicht sichtbar. Wir müssen Java mitteilen, welche Werte eingetragen werden sollen, und vor allem wo. Dazu definiert man Konstruktoren: Ein Konstruktor ist eine spezielle Methode zur Erzeugung eines Objekts. Sie ist verantwortlich für die Startwerte der Attribute und kann dazu Parameter vom Aufrufer bekommen. Ein Konstruktor wird durch den new-befehl aufgerufen /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

41 Konstruktoren Ein Konstruktor ist eine Methode ohne Rückgabetyp. Der Name des Konstruktors ist der Name der Klasse: class Vektor { private double x, y; public Vektor(double x, double y) { this.x = x; this.y = y; public void setzee() { x = 1; y = 0; /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

42 Konstruktoren class Vektor { private double x, y; public Vektor(double x, double y) { this.x = x; this.y = y; public void setzee() { x = 1; y = 0; Die Parameter für den Konstruktor werden dem new-befehl übergeben. Damit können Startwerte direkt zugewiesen werden: Vektor v = new Vektor(1, -7); // so ist es üblich Vektor w = new Vektor(); FEHLER v.x = -1; FEHLER Sobald echte Konstruktoren vorhanden sind, streicht Java den leeren Konstruktor. Man muss ihn dann, falls erwünscht, selbst hinzufügen /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

43 Styleguide/Conventions Beschreiben von Daten nur über öffentliche set-methoden, die gleichnamige Variablen als Parameter bekommen. In der Methode Benutzung von this für Attribute. Initialisierung nur über Konstruktoren, keine Kombis der Form RationaleZahl r = new RationaleZahl(); r.nenner = 0;. Methoden prüfen Parameter und kommen mit allen möglichen/unmöglichen Eingaben klar. Ausgabe der Objekte nur über die Methode tostring(), Objekte schreiben selbst nicht direkt in System.out. Weitere verpflichtende Methoden wie clone(), equals() oder compare(), aber nicht hier im Vorkurs /2016 Dr. Daniel Haase - Vorkurse Informatik V3/V4

Klassen und Objekte. Klassen sind Vorlagen für Objekte. Objekte haben. Attribute. Konstruktoren. Methoden. Merkblatt

Klassen und Objekte. Klassen sind Vorlagen für Objekte. Objekte haben. Attribute. Konstruktoren. Methoden. Merkblatt Klassen und Objekte Klassen sind Vorlagen für Objekte. Objekte haben Attribute Konstruktoren Methoden Aus einer Klasse kann man beliebig viele Objekte herstellen. Attribute bestimmen die Eigenschaften

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 34 Einstieg in die Informatik mit Java Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Definition von Klassen 2 Methoden 3 Methoden

Mehr

JAVA - Methoden

JAVA - Methoden Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 Folie 1 sind eine Zusammenfassung von Deklarationen und Anweisungen haben einen Namen und können

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen

Mehr

3. Klassen Statische Komponenten einer Klasse. Klassenvariablen

3. Klassen Statische Komponenten einer Klasse. Klassenvariablen Klassenvariablen Wir wollen die Zahl der instantiierten Studentenobjekte zählen. Dies ist jedoch keine Eigenschaft eines einzelnen Objektes. Vielmehr gehört die Eigenschaft zu der Gesamtheit aller Studentenobjekte.

Mehr

Java Einführung Methoden in Klassen

Java Einführung Methoden in Klassen Java Einführung Methoden in Klassen Lehrziel der Einheit Methoden Signatur (=Deklaration) einer Methode Zugriff/Sichtbarkeit Rückgabewerte Parameter Aufruf von Methoden (Nachrichten) Information Hiding

Mehr

Klassen mit Instanzmethoden

Klassen mit Instanzmethoden Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 3.12.07 G. Bohlender (IANM UNI Karlsruhe) OOP und Klassen 3.12.07

Mehr

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung Wiederholung Wozu? Schreiben Benutzen Rekursion?! Javakurs 2012, 3. Vorlesung maggyrz@freitagsrunde.org 5. März 2013 Wiederholung Wozu? Schreiben Benutzen Rekursion?! 1 Wiederholung 2 Wozu? 3 Schreiben

Mehr

JAVA - Methoden - Rekursion

JAVA - Methoden - Rekursion Übungen Informatik I JAVA - Methoden - Rekursion http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 1 Methoden Methoden sind eine Zusammenfassung von Deklarationen und Anweisungen

Mehr

Objektorientierung (OO)

Objektorientierung (OO) Objektorientierung (OO) Objekte haben Zustände (oder Eigenschaften, Attribute) und Verhalten Zustände: Objektvariablen (in Java auch fields) Verhalten (oder Aktionen): Methoden (methods, Funktionen) members

Mehr

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des

Mehr

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 3 - Objektorientierung Warum Objektorientierung Daten und Funktionen möglichst eng koppeln und nach außen kapseln Komplexität der Software besser modellieren

Mehr

Beispiele für Ausdrücke. Der imperative Kern. Der imperative Kern. Imperativer Kern - Kontrollstrukturen. Deklarationen mit Initialisierung

Beispiele für Ausdrücke. Der imperative Kern. Der imperative Kern. Imperativer Kern - Kontrollstrukturen. Deklarationen mit Initialisierung Beispiele für Ausdrücke Der imperative Kern Deklarationen mit Initialisierung Variablendeklarationen int i = 10; int j = 15; Beispiele für Ausdrücke i+j i++ i & j i j [] [static]

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine

Mehr

5.4 Klassen und Objekte

5.4 Klassen und Objekte 5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen

Mehr

Objektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ

Objektorientierte Programmierung. Objektorientierte Programmierung. Klasse. Objekt. Beispiel: Sportfest1. Methode. Eine Einführung mit BlueJ Objektorientierte Programmierung Objektorientierte Programmierung Eine Einführung mit BlueJ stellt die Daten, ihre Struktur und ihre Beziehungen zueinander in den Vordergrund. Weniger im Blickpunkt: die

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 02: Klassen & Objekte Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Klassen Grundstruktur einer Java-Klasse Eigenschaften (Attribute) Variablen

Mehr

Kapitel 8. Programmierkurs. Methoden. 8.1 Methoden

Kapitel 8. Programmierkurs. Methoden. 8.1 Methoden Kapitel 8 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Methoden Überladen von Methoden Der this-zeiger Konstruktoren Vererbung WS 07/08

Mehr

Java Cheatsheet. Mehrzeiliger Kommentar (beginnt mit /* und endet mit */)

Java Cheatsheet. Mehrzeiliger Kommentar (beginnt mit /* und endet mit */) Good code is its own best documentation. (Steve McConnell) Java Cheatsheet Java Grundlagen Aufbau einer Klasse Name der Klasse public class MeineKlasse { Textdatei MeineKlasse.java (muss dem Namen der

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Felder Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Was sind Felder? 2 Vereinbarung von Feldern 3 Erzeugen von Feldern

Mehr

Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode

Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode Methoden und Klassen Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik Wiederholung Jede Applikation braucht eine Klasse mit einer main-methode Eintrittspunkt in das Programm Die main-methode

Mehr

AuD-Tafelübung T-B5b

AuD-Tafelübung T-B5b 6. Übung Sichtbarkeiten, Rekursion, Javadoc Di, 29.11.2011 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit 3 Stack und Heap Stack Heap 4 Blatt 6 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 03: Wiederholung und Nutzereingaben Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Wiederholung Klassen, Objekte, Attribute und Methoden

Mehr

Einführung in die Programmierung 1

Einführung in die Programmierung 1 Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

Java Einführung Methoden. Kapitel 6

Java Einführung Methoden. Kapitel 6 Java Einführung Methoden Kapitel 6 Inhalt Deklaration und Aufruf von Methoden Lokale und globale Namen (Bezeichner) Sichtbarkeit und Lebensdauer von Variablen in Methoden Überladen von Methoden 2 Methoden

Mehr

Klassen und Objekte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg

Klassen und Objekte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg Klassen und Objekte Einführung in Java Folie 1 von 28 12. Mai 2011 Ivo Kronenberg Inhalt Objekte Klassendefinitionen Datenelemente (Klassenattribute) Instanzieren von Objekten Konstruktoren Vergleich primitive

Mehr

5. Tutorium zu Programmieren

5. Tutorium zu Programmieren 5. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by IPD Snelting

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 6. Methoden

Grundlagen der Programmierung Prof. H. Mössenböck. 6. Methoden Grundlagen der Programmierung Prof. H. Mössenböck 6. Methoden Parameterlose Methoden Beispiel: Ausgabe einer Überschrift class Sample { static void printheader() { // Methodenkopf Out.println("Artikelliste");

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Felder, mehrdimensional Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Überblick: mehrdimensionale Felder 2 Vereinbarung

Mehr

Java - Überladen von Methoden und Konstruktoren

Java - Überladen von Methoden und Konstruktoren Java - Überladen von Methoden und Konstruktoren 2 + 3 Addition 1 + 2 + 3 + 4+ 5 +... 4.2 + 3.3 4.2 + 3 + 5 Leibniz Universität IT Services Anja Aue Überladen von Methoden und Konstruktoren Innerhalb einer

Mehr

JAVA für Nichtinformatiker - Probeklausur -

JAVA für Nichtinformatiker - Probeklausur - JAVA für Nichtinformatiker - Probeklausur - Die folgenden Aufgaben sollten in 150 Minuten bearbeitet werden. Aufgabe 1: Erläutere kurz die Bedeutung der folgenden Java-Schlüsselwörter und gib Sie jeweils

Mehr

Grundlagen der Objektorientierten Programmierung - Statische Arrays

Grundlagen der Objektorientierten Programmierung - Statische Arrays Statische Arrays Ein Array ist ein Behälter für Datenelemente desselben Typs. Arrays können beliebig viele Dimensionen haben. Die Standardform ist das eindimensionale Array, das man sich in Zeilenform

Mehr

1. Referenzdatentypen: Felder und Strings. Referenz- vs. einfache Datentypen. Rückblick: Einfache Datentypen (1) 4711 r

1. Referenzdatentypen: Felder und Strings. Referenz- vs. einfache Datentypen. Rückblick: Einfache Datentypen (1) 4711 r 1. Felder und Strings Eigenschaften von Referenzdatentypen 1. Referenzdatentypen: Felder und Strings Referenzdatentypen sind Konstrukte, mit deren Hilfe wir aus einfachen Datentypen neue eigene Typen erzeugen

Mehr

Kapitel 9: Klassen und höhere Datentypen. Klassen und höhere. Objekte, Felder, Methoden. Küchlin/Weber: Einführung in die Informatik

Kapitel 9: Klassen und höhere Datentypen. Klassen und höhere. Objekte, Felder, Methoden. Küchlin/Weber: Einführung in die Informatik Klassen und höhere Datentypen Objekte, Felder, Methoden Küchlin/Weber: Einführung in die Informatik Klassen Klasse (class) stellt einen (i.a. benutzerdefinierten) Verbund-Datentyp dar Objekte sind Instanzen

Mehr

1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen

1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen 1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen II.2.2 Methoden, Unterprogramme und Parameter - 1 - 2. Methoden

Mehr

Arbeitsblatt zu Methoden

Arbeitsblatt zu Methoden Arbeitsblatt zu Methoden In den vorhergehenden Programmen haben wir bereits jede Menge Methoden benutzt: 1. kara.move(), kara.turnright(), kara.putleaf() Dies sind alles Methoden, die etwas ausführen,

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg Sommersemester 2014 Jochen Hoenicke (Software Engineering) Einführung in die Informatik Sommersemester

Mehr

Algorithmen und Programmierung II

Algorithmen und Programmierung II Algorithmen und Programmierung II Vererbung Prof. Dr. Margarita Esponda SS 2012 1 Imperative Grundbestandteile Parameterübergabe String-Klasse Array-Klasse Konzepte objektorientierter Programmierung Vererbung

Mehr

Algorithmen und Datenstrukturen 06

Algorithmen und Datenstrukturen 06 31. Mai 2012 1 Besprechung Blatt 5 Fragen 2 Objektorientierte Programmierung Allgemein Sichtbarkeit Konstanten 3 Unified Modeling Language (UML) Klassendiagramme Anwendungsfalldiagramme 4 Vorbereitung

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 39 Einstieg in die Informatik mit Java Objektorientierte Programmierung und Klassen mit Instanzmethoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 39 1 Überblick:

Mehr

1.2 Attribute und Methoden Aufbau einer Java-Klasse:

1.2 Attribute und Methoden Aufbau einer Java-Klasse: Aufbau einer Java-Klasse: public class Quadrat { int groesse; int xposition; String farbe; boolean istsichtbar; public void sichtbarmachen() { istsichtbar = true; public void horizontalbewegen(int distance){

Mehr

Kapitel 3. Programmierkurs. Arten von Anweisungen. 3.1 Was sind Anweisungen?

Kapitel 3. Programmierkurs. Arten von Anweisungen. 3.1 Was sind Anweisungen? Kapitel 3 Programmierkurs Birgit Engels, Anna Schulze ZAIK Universität zu Köln Anweisungen, Variablen Arten von Anweisungen Variablen Konstanten Höchste Zeit für ein Programm Gültigkeitsbereich von Variablen

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 41 Einstieg in die Informatik mit Java Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick: Vererbung 2 Grundidee Vererbung 3 Verdeckte Variablen

Mehr

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22 C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven

Mehr

Java Schulung (Java 2 Java Development Kit 5 / 6)

Java Schulung (Java 2 Java Development Kit 5 / 6) 2. Grundlagen der Objektorientierung 2.1 Klassen, Attribute, Methoden Klassen Eine Klasse beschreibt als Bauplan Gemeinsamkeiten einer Menge von Objekten ist also ein Modell, auf dessen Basis Objekte erstellt

Mehr

Informatik I - Einstiegskurs

Informatik I - Einstiegskurs Informatik I - Einstiegskurs Dr. Henrik Brosenne Georg-August-Universität Göttingen Institut für Informatik Basiert auf dem Einstiegskurs im Wintersemester 2009/10 von Markus Osterhoff Wintersemester 2012/13

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

Klausur Fachprüfung Wirtschaftsinformatik. Name:

Klausur Fachprüfung Wirtschaftsinformatik. Name: Klausur Fachprüfung Wirtschaftsinformatik Dauer: 2 Stunden Datum: 02.10.2003 Name: Punkte True-or-False: von 15 Punkte Multiple Choice: von 15 Punkte Quickies: von 30 Punkte Shorties: von 20 Punkte Longies:

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

5.5.8 Öffentliche und private Eigenschaften

5.5.8 Öffentliche und private Eigenschaften 5.5.8 Öffentliche und private Eigenschaften Schnittstellen vs. Implementierungen: Schnittstelle einer Klasse beschreibt, was eine Klasse leistet und wie sie benutzt werden kann, ohne dass ihre Implementierung

Mehr

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005 Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der

Mehr

Programmiertechnik Klassenmethoden

Programmiertechnik Klassenmethoden Programmiertechnik Klassenmethoden Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Motivation Programm zur Berechung von public class Eval1 { public static void main(string[] args) { java.util.scanner

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java Bisherige Beobachtungen zu Objekten: werden in Klassen zusammengefasst besitzen Eigenschaften und Verhalten verbergen private Informationen werden geboren, leben und

Mehr

Die einfachsten Anweisungen

Die einfachsten Anweisungen 2 Die einfachsten Anweisungen 2-1 Inhalt Die einfachsten Anweisungen Einführung Datentypen Arithmetische Operatoren Mathematische Funktionen Mehrfache Zuweisungen Übungsaufgaben Einführung Wir wollen unser

Mehr

System.out.println("TEXT");

System.out.println(TEXT); Inhaltsübersicht - Erstes Beispiel - Datentypen - Ausdrücke und Operatoren - Schleifen / Bedinungen - Struktogramme - Grundgerüst eines Programms in JAVA - Einlesen von Daten Erstes Beispiel public class

Mehr

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Klassenmethoden

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Klassenmethoden Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Klassenmethoden Motivation Programm zur Berechnung von public class Eval1 { public static void main(string[] args) { java.util.scanner

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Klausur Grundlagen der Programmierung

Klausur Grundlagen der Programmierung Klausur Grundlagen der Programmierung Aufgabenstellung: Martin Schultheiß Erreichte Punktzahl: von 60 Note: Allgemeine Hinweise: Schreiben Sie bitte Ihren Namen auf jedes der Blätter Zugelassene Hilfsmittel

Mehr

Java Vererbung. Inhalt

Java Vererbung. Inhalt Java Vererbung Inhalt 1 Zielsetzung... 2 1.1 Bewertung... 2 2 Grundlagen der Vererbung... 2 2.1 Super und Subklassen... 2 3 Überladen von Methoden... 4 3.1 Unterschiedliche Parameter... 4 3.2 Gleiche Parameter

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Einführung in die objektorientierte Programmierung Teil 2 2 Übersicht der heutigen Inhalte Vererbung Abstrakte Klassen Erweitern von Klassen Überladen von Methoden Überschreiben von

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

Organisatorisches. drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50

Organisatorisches. drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50 Organisatorisches Vorlesung Donnerstag 8:35 bis 10:05 Übung drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50 Tutorium (Mehr oder weniger) abwechselnd Mo und Mi 10-11:30 Termine

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin

Mehr

Grundlagen der Programmierung Teil1 Einheit III Okt. 2010

Grundlagen der Programmierung Teil1 Einheit III Okt. 2010 Grundlagen der Programmierung Teil1 Einheit III - 22. Okt. 2010 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Einschub Bevor wir mit den

Mehr

Klassen und Methoden

Klassen und Methoden Klassen und Methoden Strukturierung von Daten und Programmen in Java strukturiertes Programmieren Der "prozedurale" Teil von Java wurde im vorigen Abschnitt behandelt. Um größere Projekte zu bearbeiten

Mehr

Java - Klassen und Objekte

Java - Klassen und Objekte Java - Klassen und Objekte Der Würfel hat 12 Kanten. Der Würfel ist grün eingefärbt. Die Kanten sind in schwarz gezeichnet. Der Würfel kann gedreht werden. Die Kantenfarbe und die Seitenfarbe kann verändert

Mehr

C# - Einführung in die Programmiersprache Arrays, Enumeration und Collections. Leibniz Universität IT Services Anja Aue

C# - Einführung in die Programmiersprache Arrays, Enumeration und Collections. Leibniz Universität IT Services Anja Aue C# - Einführung in die Programmiersprache Arrays, Enumeration und Collections Leibniz Universität IT Services Anja Aue Arrays... speichern mehrere Werte vom gleichen Datentyp. fassen zusammenhängende Werte

Mehr

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1 Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 25 Einstieg in die Informatik mit Java Objektorientierte Programmierung und Klassen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 25 1 Die Philosophie 2 Definition

Mehr

Software Engineering Klassendiagramme Einführung

Software Engineering Klassendiagramme Einführung Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt

Mehr

Musterlösung Stand: 5. Februar 2009

Musterlösung Stand: 5. Februar 2009 Fakultät IV Elektrotechnik/Informatik Probeklausur Einführung in die Informatik I Hinweis: Diese Probeklausur ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der Teilleistung TL 2 (Programmiertest)

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Einführung in die objektorientierte Programmierung Teil 3 2 Übersicht der heutigen Inhalte Pakete Beispiel zur Verdeckung Polymorphie Modifikatoren bei Klassenelementen 3 Zusammenhang

Mehr

Java I Vorlesung 6 Referenz-Datentypen

Java I Vorlesung 6 Referenz-Datentypen Java I Vorlesung 6 Referenz-Datentypen 7.6.2004 Referenzen this, super und null Typkonvertierung von Referenztypen Finale Methoden und Klassen Datentypen in Java In Java gibt es zwei Arten von Datentypen:

Mehr

Hochschule Augsburg, Fakultät für Informatik Name:... Prüfung "Programmieren 1", IN1bac, WS 10/11 Seite 1 von 6

Hochschule Augsburg, Fakultät für Informatik Name:... Prüfung Programmieren 1, IN1bac, WS 10/11 Seite 1 von 6 Prüfung "Programmieren 1", IN1bac, WS 10/11 Seite 1 von 6 Datum, Uhrzeit: 24. 01. 2011, 10.30 Uhr Semester: IN1 Note:... Prüfer: Prof. Meixner Dauer: 60 Min. Hilfsmittel: keine Punkte:... Diese Prüfung

Mehr

1. Typen und Literale (6 Punkte) 2. Zuweisungen (6 = Punkte)

1. Typen und Literale (6 Punkte) 2. Zuweisungen (6 = Punkte) Praktische Informatik (Software) Vorlesung Softwareentwicklung 1 Prof. Dr. A. Ferscha Hauptklausur am 01. 02. 2001 Zuname Vorname Matr. Nr. Stud. Kennz. Sitzplatz HS / / / Punkte Note korr. Fügen Sie fehlende

Mehr

Statische und Nichtstatische Methoden Properties/ Eigenschaften

Statische und Nichtstatische Methoden Properties/ Eigenschaften Statische und Nichtstatische Methoden Properties/ Eigenschaften Statische Methoden Definition und Merkmale von Properties Modifizierer Beispiele Nebeneffekte Dr. Beatrice Amrhein Statische / Nichtstatische

Mehr

Überschreiben von Methoden

Überschreiben von Methoden Vergleich der DoME Realisierungen: Methode ausgeben Version 1 (ohne Vererbung): Anzeigen aller Informationen CD: A Swingin Affair (64 Min)* Frank Sinatra Titelanzahl: 16 Mein Lieblingsalbum von Sinatra

Mehr

Übungsblatt 7. Was ist die Ausgabe de facto? Entspricht die Ausgabe Ihren Erwartungen?

Übungsblatt 7. Was ist die Ausgabe de facto? Entspricht die Ausgabe Ihren Erwartungen? »Programmieren«, WS 2006/2007 Nino Simunic (nino.simunic@uni-due.de) Übungsblatt 7 Die benötigten Quelltexte finden Sie hier: http://imperia.uni-due.de/imperia/md/content/computerlinguistik/uebungsblatt_7_code.zip

Mehr

Abschnitt 6: Klassen, Objekte und Methoden in Java

Abschnitt 6: Klassen, Objekte und Methoden in Java Abschnitt 6: Klassen, Objekte und Methoden in Java 6. Klassen, Objekte und Methoden in Java 6.1 Klassen 6.2 Objekte 6.3 Methoden 6.4 Zusammenfassung 6 Klassen, Objekte und Methoden in Java Informatik 2

Mehr

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 1. Kapitel 11. Listen. Listen

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 1. Kapitel 11. Listen. Listen Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 1 Kapitel 11 Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 2 Ziele Implementierungen für

Mehr

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015 Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

Grundlagen der Programmierung Teil1 Einheit III Okt. 2009

Grundlagen der Programmierung Teil1 Einheit III Okt. 2009 Grundlagen der Programmierung Teil1 Einheit III - 23. Okt. 2009 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Ausdrücke & Anweisungen

Mehr

einkonto.zahle(+100); //Transaktion Einzahlung einkonto.zahle(-20); //Transaktion Auszahlung einkonto.zahle(+30); //Transaktion Einzahlung

einkonto.zahle(+100); //Transaktion Einzahlung einkonto.zahle(-20); //Transaktion Auszahlung einkonto.zahle(+30); //Transaktion Einzahlung PIWIN I Kap. 7 Objektorientierte Programmierung - Einführung 28 Testklasse public class TestGirokonto { public static void main(string[] args) { // erzeuge neues Konto Girokonto einkonto = new Girokonto();

Mehr

Grundzüge der Wirtschaftsinformatik WS 2002/03. Wiederholung Java. Programmierzyklus. Heiko Rossnagel Problem

Grundzüge der Wirtschaftsinformatik WS 2002/03. Wiederholung Java. Programmierzyklus. Heiko Rossnagel  Problem Grundzüge der Wirtschaftsinformatik WS 2002/03 Wiederholung Java Heiko Rossnagel www.m-lehrstuhl.de accelerate.com Grundzüge der Wirtschaftsinformatik WS 2002/03 1 Programmierzyklus Problem Formulierung

Mehr

Vorlesung Informatik II

Vorlesung Informatik II Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 02. JAVA: Erstes Programm 1 Das erste Java-Programm

Mehr

6 Speicherorganisation

6 Speicherorganisation Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen Speicherbereich für

Mehr

620.900 Propädeutikum zur Programmierung

620.900 Propädeutikum zur Programmierung 620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Arrays Wiederholung (1/5) Array = GEORDNETE

Mehr

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging.

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Algorithmische Kernsprache Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Ausdrücke Anweisungen Ausdrücke bezeichnen einen Wert Kontext stellt Werte von Variablen Werte

Mehr

Am Anfang werden die Attribute deklariert public class Kreis {

Am Anfang werden die Attribute deklariert public class Kreis { Klassendiagramm Kreis Entwerfen Sie ein Klassendiagramm der Klasse Kreis mit allen Attributen und min. drei Methoden. public class Kreis { sichtbar Platz für Atributeund Methoden protected int xposition;

Mehr

FH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Blöcke. Beispiel: Variablen in Blöcken

FH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Blöcke. Beispiel: Variablen in Blöcken 4 Objektorientierte Programmierung in Java Prof. Dr. Ing. André Stuhlsatz Blöcke Blöcke erweitern einzelne Anweisungen, etwa bei Kontrollstrukturen später Beispiel: Einzelne Anweisung: anweisung; Erweiterung

Mehr

Programmieren 2 Java Überblick

Programmieren 2 Java Überblick Programmieren 2 Java Überblick 1 Klassen und Objekte 2 Vererbung 4 Innere Klassen 5 Exceptions 6 Funktionsbibliothek 7 Datenstrukturen und Algorithmen 8 Ein-/Ausgabe 9 Graphische Benutzeroberflächen 10

Mehr

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel. Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 7, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

public class SternchenRechteckGefuellt {

public class SternchenRechteckGefuellt { Java programmieren: Musterlösungen Konsolen-Aufgaben Aufgabe 1: Gefüllte Rechtecke zeichnen Schreiben Sie ein Programm, das ein durch Sternchen gefülltes Rechteck zeichnet. Der Benutzer soll Breite und

Mehr

Methoden (fortgeschritten) in C# - 1

Methoden (fortgeschritten) in C# - 1 Methoden (fortgeschritten) in C# - 1 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Opertatoren Überladung 2. delegate 3. Anonyme Methoden delegate Lamda Ausdruck-Lamdas Anweisung-Lamdas Variablenbereich

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

Was Mathematiker schon vor Jahrhunderten erfunden haben, gibt es jetzt endlich in ihrer Programmiersprache:

Was Mathematiker schon vor Jahrhunderten erfunden haben, gibt es jetzt endlich in ihrer Programmiersprache: Kapitel 8 Operatoren Was Mathematiker schon vor Jahrhunderten erfunden haben, gibt es jetzt endlich in ihrer Programmiersprache: Operatoren definieren Es ist in C++ möglich, Operatoren wie +, oder für

Mehr

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden Javaprogrammierung mit NetBeans Variablen, Datentypen, Methoden Programmieren 2 Java Bezeichner Bezeichner: Buchstabe _ $ Buchstabe _ $ Ziffer Groß- und Kleinbuchstaben werden strikt unterschieden. Schlüsselwörter

Mehr