Erste Java-Programme (Java Wiederholung & Vererbung)

Ähnliche Dokumente
Java I Vorlesung Vererbung und Sichtbarkeit

Erste Java-Programme (Scopes und Rekursion)

Vererbung. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java 14.1.

Vererbung. Martin Wirsing. Ziele. Vererbung

Einführung in die Programmierung

Einstieg in die Informatik mit Java

Die Klasse java.lang.object. Thorsten Treffer

Erste Java-Programme (Arrays und Schleifen)

Java Zusammenfassung. Basisdatentypen ganzzahlig: Byte, Short, Integer, Long Fließkomma: Float, Double Zeichen: Character Wahrheitswerte: Boolean

Java Vererbung. Inhalt

PYTHON. 06 Objektorientierung II

Programmieren in Java

4. Vererbung Die Klasse Object. Die Klasse Object

Javakurs für Anfänger

Objektorientierte Programmierung. Kapitel 22: Aufzählungstypen (Enumeration Types)

Probeklausur Java Einführung in die Informatik. Wintersemester 2016/2017

2.13 Vererbung. Rainer Feldmann Universität Paderborn Technische Informatik für Ingenieure (TIFI) WS 09/ Article

Repetitorium Informatik (Java)

Vorkurs Informatik WiSe 15/16

Exceptions und Vererbung

Vererbung, Polymorphie

Einstieg in die Informatik mit Java

Algorithmen und Datenstrukturen

Anwendungsentwicklung mit Java. Grundlagen der OOP, Vererbung, Schnittstellen, Polymorphie

Einführung in die Programmiersprache Java II

Probeklausur Java Einführung in die Informatik. Wintersemester 2017/2018

Innere Klassen. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java

Vererbung. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java 23.5.

4. Vererbung. Idee der Vererbung. Wir wollen ein Verwaltungsprogramm für CDs und Videos entwickeln. Wir stellen uns dazu folgende Klassen vor:

Institut für Programmierung und Reaktive Systeme. Java 7. Markus Reschke

Programmierkurs Java. Vererbung. Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung

Einstieg in die Informatik mit Java

Javakurs für Anfänger

Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen

FH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Wiederholung: Gerüstbeispiel. Vererbungshierarchie: Typ 0

Objektorientierte Programmierung III

Grundzüge der Programmierung. Wiederverwendung VERERBUNG

Vererbung und Polymorphie

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

3 Objektorientierte Konzepte in Java

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download

Kapitel 13. Abstrakte Methoden und Interfaces. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz

Vererbung, Polymorphismus

Einführung in C# Teil 3. Matthias Nübling

OOP und Angewandte Mathematik. Eine Einführung in die Anwendung objektorientierter Konzepte in der angewandten Mathematik

Probeklausur: Programmierung WS04/05

Vorausgesetzte Grundkenntnisse. Inhalt. Klassenhierarchie und Vererbung. Vererbung. Klassenhierarchie und Vererbung. Einführung in C# Teil 3

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 2. Teil

7. Schnittstellen Grundlagen zu Schnittstellen. 7. Schnittstellen

Klassen als Objekte. Smalltalk vs. Objective-C. Self-Nachrichten an Klassen in Objective-C. Klassen als Objekte. Smalltalk: Everything is an object

Weitere Beispiele. Beispiel CD-Spieler: Exemplare eines abstrakten Konzepts. 7. Schnittstellen. Schnittstelle: Syntax

9. Vererbung und Polymorphie. Informatik Vererbung und Polymorphie 1

Kapitel 8. Programmierkurs. Methoden. 8.1 Methoden

Java Einführung Vererbung und Polymorphie. Kapitel 13

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter

Algorithmen und Programmierung II

Programmieren I. Kapitel 8. Vererbung

Überschreiben von Methoden

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

12 Abstrakte Klassen, finale Klassen und Interfaces

7. Übung Informatik II - Objektorientierte Programmierung

Einführung in Java. Arne Hüffmeier. Angelehnt an Java-Vorkurs der Freitagsrunde. Methoden implementieren. Michelle Liebers, Dennis Hoffmann

Programmieren in Java

Klausur Grundlagen der Programmierung

Javakurs für Anfänger

Objektorientierte Programmierung Studiengang Medieninformatik

Vererbung P rogram m ieren 2 F örster/r iedham m er K apitel 11: V ererbung 1

1 Abstrakte Klassen, finale Klassen und Interfaces

Objektorientierung. Marc Satkowski 20. November C# Kurs

Programmierung für Mathematik HS11

Das Interface-Konzept am Beispiel der Sprache Java

Tag 7 Repetitorium Informatik (Java)

Einführung in die Programmierung für NF. Vererbung

Objektorientierte Programmierung Studiengang Medieninformatik

Algorithmen und Datenstrukturen 07

Methoden und Klassen. Silke Trißl Wissensmanagement in der Bioinformatik

Interfaces und Vererbung

Transkript:

Lehrstuhl Bioinformatik Konstantin Pelz Erste Java-Programme (Java Wiederholung & ) Tutorium Bioinformatik (WS 18/19) Konstantin: Konstantin.pelz@campus.lmu.de Homepage: https://bioinformatik-muenchen.com/studium/propaedeutikumprogrammierung-in-der-bioinformatik/

Organisatorisches!!! NICHT VERGESSEN!!! Bedarfsermittlung für das PBL (bis 14.01.19) - 07.01.19-14.01.19: Bedarfserfassung - 21.01.19-28.01.19: Verbindliche Anmeldung - voraus. ab 31.01.19: Mitteilung der Einteilung durch die Veranstalter und ggf. Informationen zum ersten Termin Link: https://www.bio.ifi.lmu.de/studium/seminare-praktika/ Konstantin Pelz, 08.01.2019 # 1

Wiederholung Java - Datentypen - If/Else/If Else - Arrays - Exceptions - Schleifen (for/while) - Scope - RegEx Konstantin Pelz, 08.01.2019 # 2

Wiederholung Java - Datentypen - z.b. int, double, String - If/Else/If Else - Fallunterscheidung, Alternative ist Switch-Case - Arrays - Festgelegte Größe, Speicherung mit Indices, Beginnt bei 0! - Exceptions - GidF, meist selbsterklärend, nutzt verschiedenes Debugging - Schleifen (for/while) - Entscheidung welche besser zum Problem passt, Bei while: Vorsicht vor endlosen Schleifen - Scope - Sichtbarkeit, bei vielen ähnlichen Variablen immer prüfen, ob man mit der richtigen arbeitet - RegEx - Reguläre Ausdrücke, Gut um Muster zu beschreiben oder zu finden Konstantin Pelz, 08.01.2019 # 2

Wiederholung Java - Rekursion vs. Iteration - Klassen - Objekte - Methoden - Statische Variablen und Methoden - Überladung von Methoden Konstantin Pelz, 08.01.2019 # 2

Wiederholung Java - Rekursion vs. Iteration - Wiederhol. Aufruf von sich selbst vs. normal programmiert - Klassen - Strukur von Objekten, immer Konstruktor und Methoden, Importierbar von schon bestehenden libraries - Objekte - Abbildungen von Klassen, können viele Eigenschaften haben - Methoden - Sehr unterschiedlich, Rückgabetyp oder void, Eingabeparameter oder keine, statisch oder nicht - Statische Variablen und Methoden - Kein Objekt nötig um sie aufzurufen, nur EINE Instanz pro Klasse - Überladung von Methoden - Gleicher Methodenkopf, unterschiedlicher Methodenrumpf Konstantin Pelz, 08.01.2019 # 2

Motivation: Wiederverwendbarkeit der Klassen - Klasse A erbt von Klasse B - Klasse A kann Methoden und Eigenschaften von Klasse B nutzen - Klasse A kann Methoden von Klasse B überschreiben oder erweitern - Klasse A kann weitere Methoden und Eigenschaften definieren Beispiel: Student ist eine Person. Professor ist eine Person. Gemeinsame Eigenschaften und Methoden, die sowohl Student wie auch Professor haben, können einmalig in Person geschrieben werden. Student und Professor greifen dann auf Person zu. () Konstantin Pelz, 08.01.2019 # 2

Allgemein in Java: - eine Klasse kann nur von einer anderen Klasse erben - Von einer Klasse, können beliebig viele Klassen erben Java Code Beispiel: Konstantin Pelz, 08.01.2019 # 2

Überladung: Zwei Methoden haben gleichen Namen, aber verschiedene Parameter. Aufruf wird zur Compilezeit unterschieden. Überschreiben: Zwei Methoden mit gleichem Namen und gleichen Parametern, aber eine davon in Basisklasse und eine in abgeleiteter Klasse. Erst zur Laufzeit wird Typ des Objekts geprüft und die richtige Methode ausgewählt. Konstantin Pelz, 08.01.2019 # 3

Methodendefinition in der abgeleiteten Klasse kann auf Definition in der Basisklasse zugreifen. Methodenaufruf super.methode(...) geht die Klassenhierarchie durch und sucht zuletzt überschriebene Definition von methode(...). super allein ist kein gültiger Ausdruck! Konstantin Pelz, 08.01.2019 # 4

Konstruktoren werden nicht vererbt. Konstruktoren der Basisklasse können mit super(...) aufgerufen werden. Falls Basisklasse mehrere Konstruktoren hat, ruft super(...) den mit den richtigen Parametertypen auf. Konstantin Pelz, 08.01.2019 # 5

Wenn bei einer Klassendefinition nicht explizit extends... dabeisteht, wird sie implizit von Object (in java.lang) abgeleitet. Wichtigste Methoden (zum Überschreiben): boolean equals(object o): Bin ich gleich wie Objekt o? Konstantin Pelz, 08.01.2019 # 6

Wenn bei einer Klassendefinition nicht explizit extends... dabeisteht, wird sie implizit von Object (in java.lang) abgeleitet. Wichtigste Methoden (zum Überschreiben): String tostring(): erzeuge eine String- Repräsentation von mir. Wird automatisch bei +-Operation für Strings aufgerufen. Konstantin Pelz, 08.01.2019 # 7

Beispiel für eine Superklasse Sequence und zwei Subklassen AminoSequence und MrnaSequence Konstantin Pelz, 08.01.2019 # 7

Beispiel für eine Main ruft Methoden aus der direkten Subklasse oder der Superklasse Konstantin Pelz, 08.01.2019 # 7

Beispiel für eine Main ruft Methoden aus der direkten Subklasse oder der Superklasse Konstantin Pelz, 08.01.2019 # 7

Beispiel für eine Main ruft Methoden aus der direkten Subklasse oder der Superklasse Konstantin Pelz, 08.01.2019 # 7

Beispiel für eine Wenn SuperKlasse gefragt ist, wird auch die SubKlasse erlaubt. Konstantin Pelz, 08.01.2019 # 7