Computeranwendung und Programmierung (CuP)



Ähnliche Dokumente
Einführung in die Programmierung

Einführung in die Java- Programmierung

Objektorientierte Programmierung

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Java: Vererbung. Teil 3: super()

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

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Computeranwendung und Programmierung (CuP)

Programmierkurs Java

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Einführung in die Programmierung

Java Kurs für Anfänger Einheit 5 Methoden

Vorkurs C++ Programmierung

Einführung in die Programmierung für Wirtschaftsinformatik

5.4 Klassen und Objekte

Software Engineering Klassendiagramme Assoziationen

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

IT-Basics 2. DI Gerhard Fließ

Computeranwendung und Programmierung (CuP)

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = Euro ergeben.

5.5.8 Öffentliche und private Eigenschaften

Objektorientierte Programmierung. Kapitel 12: Interfaces

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7

Testklausur 1 zur Vorlesung. Modellierung und Programmierung I. Dr. Monika Meiler Zeit: 60 Minuten

5. Tutorium zu Programmieren

Fachgebiet Informationssysteme Prof. Dr.-Ing. N. Fuhr. Programmierung Prof. Dr.-Ing. Nobert Fuhr. Übungsblatt Nr. 6

Graphic Coding. Klausur. 9. Februar Kurs A

Testen mit JUnit. Motivation

Programmieren in Haskell Einführung

Programmieren Tutorium

1.2 Attribute und Methoden Aufbau einer Java-Klasse:

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

2. Semester, 2. Prüfung, Lösung

Programmierkurs Java

Assoziation und Aggregation

Programmierkurs Java

Objektorientierte Programmierung OOP

Erwin Grüner

Scala kann auch faul sein

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Ein erstes Java-Programm

Übungen zu Computeranwendung und Programmierung WS 13/14

Diana Lange. Generative Gestaltung Operatoren

Grundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen

Programmieren in Java

5 DATEN Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

Client-Server-Beziehungen

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

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Universität Augsburg, Institut für Informatik Sommersemester 2005 Prof. Dr. Werner Kießling 15. Oktober 2005 Dr. Alfons Huhn, Timotheus Preisinger

Musterlösungen zur Klausur Informatik 3

Bitte wenden. Name: KURSARBEIT NR. 4 (10 DIFF GA) Seite 1

Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny

Studentische Lösung zum Übungsblatt Nr. 7

Übungsblatt 3: Algorithmen in Java & Grammatiken

Modellierung und Programmierung 1

Deklarationen in C. Prof. Dr. Margarita Esponda

Selbstbestimmtes Lernen. Proinformatik III Objektorientierte Programmierung. Format. Inhalt. Buzzwords

Informatik für Schüler, Foliensatz 21 Objektorientierte Programmierung

1 Mathematische Grundlagen

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Workshop 6. Einführung in die objektorientierte Programmierung. Teil: Java mit BlueJ

Objektorientierte Programmierung

Programmierparadigmen. Programmierparadigmen. Imperatives vs. objektorientiertes Programmieren. Programmierparadigmen. Agenda für heute, 4.

Software Engineering Interaktionsdiagramme

Klassendiagramme in UML.

Javakurs zu Informatik I. Henning Heitkötter

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

Tagesprogramm

Delegatesund Ereignisse

Arbeiten mit UMLed und Delphi

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 22

Einführung in die C++ Programmierung für Ingenieure

SEP 114. Design by Contract

Vererbung & Schnittstellen in C#

Programmieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek

Einführung in die Java- Programmierung

13 OOP MIT DELPHI. Records und Klassen Ein Vergleich

Software Engineering Klassendiagramme Einführung

Praktikum Ingenieurinformatik. Termin 2. Verzweigungen (if-else), printf und scanf, while-schleife

Einführung in Javadoc

Zugriff auf die Modul-EEPROMs

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Folge 18 - Vererbung

5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren:

Java Einführung Operatoren Kapitel 2 und 3

Einführung in die Programmierung

Proseminar C-Programmierung. Strukturen. Von Marcel Lebek

Grundlagen Programmierung

Abwesenheitsnotiz im Exchange Server 2010

SEQUENZDIAGRAMM. Christoph Süsens

Javakurs für Anfänger

Aufgaben zur C-Programmierung für die Praktikumsperiode des 1.Semesters

Institut für Programmierung und Reaktive Systeme 25. August Programmier-Labor Übungsblatt. int binarysearch(int[] a, int x),

Transkript:

Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik)

Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag 12:15 13:00 (Fragestunde/ Ersatztermin) Unterlagen Kurzskriptum, erhältlich in den Übungen Barnes & Kölling: Java lernen mit BlueJ. Web-Seite: Programmbeispiele, Folien, Übungsblätter, Software, Merkblätter. 04.10.2013 CuP - VO 2

Organisatorisches (Übungen) Aufgeteilt in 16 Gruppen Hilbertraum (Hauptgebäude) Computerraum IL+IT (RWZ) Repetitorium zu Computeranwendung und Programmierung Tutoren Freies Üben (Eulerraum im TTZ) Alles weitere erfahren Sie in den Übungen. 04.10.2013 CuP - VO 3

Inhalt der Lehrveranstaltung Objektorientiertes Programmieren in Java Objekte, Klassen, Interaktion zwischen Objekten Bedingte Anweisungen und Schleifen Arbeiten mit Listen 04.10.2013 CuP - VO 4

Beispiel eines 1. KNW (a) Schreiben Sie eine Klasse Buch mit dem Konstruktor public Buch(String autor, String titel, String isbn, int anzahlseiten, boolean isttaschenbuch, String sprache). isttaschenbuch hat den Wert true, wenn das Buch ein Taschenbuch ist, und ansonsten den Wert false. 04.10.2013 CuP - VO 5

Beispiel eines 1. KNW (b) Schreiben Sie weiters eine Klasse Buecherverzeichnis mit dem Konstruktor public Buecherverzeichnis(), der ein leeres Bücherverzeichnis erzeugt. 04.10.2013 CuP - VO 6

Beispiel eines 1. KNW (c) Implementieren Sie in der Klasse Buecherverzeichnis auch die folgenden Methoden: public void addbuch(buch einbuch) fügt einbuch dem Bücherverzeichnis hinzu. 04.10.2013 CuP - VO 7

Beispiel eines 1. KNW (d) public int gibanzahldeutscherbuecher() liefert die Anzahl der deutschsprachigen Bücher, d.h. jener Bücher, für die sprache den Wert "deutsch" hat. public ArrayList<Buch> gettaschenbuecher() liefert eine ArrayList mit den im Bücherverzeichnis vorhandenen Taschenbüchern. 04.10.2013 CuP - VO 8

Objektorientiertes Programmieren (OOP) Objekte zentrale Konzept der OOP Programme laufen an/in Objekten ab Klassenbeschreibung definiert die Eigenschaften der Objekte (dieser Klasse) welche Attribute wie werden Objekte erzeugt welche Methoden was bewirkt ein Methodenaufruf 04.10.2013 CuP - VO 9

Syntax und Semantik Programmsyntax Gibt die Schreibweise von Programmen in einer bestimmten Programmiersprache an. In Java wird die korrekte Syntax vom Compiler geprüft. Programmsemantik Gibt die Bedeutung eines Programms an. Was macht ein Programm? Kann durch Ausführen des Programms getestet werden. 04.10.2013 CuP - VO 10

Java: Klassendefinition public class klassenname { } attributliste konstruktordefinition methodenliste 04.10.2013 CuP - VO 11

Attributdefinition private typ attributname; Ein Typ definieren einen Wertebereich. 8 Basistypen int, double, boolean, long, char, byte, short, float. Objekttypen (z.b. String String) durch Angabe eines Klassennamens 04.10.2013 CuP - VO 12

Wichtige Basistypen int ganze Zahl zwischen -2 31,,2 31-1 double Gleitkommazahl (z.b. -1.23 oder 1.2e-4) boolean logischer Wahrheitswert: true true oder false 04.10.2013 CuP - VO 13

Typ String Zeichenkette "TICKET" "Computer und Programmieren" "" Die Anführungszeichen " sind nicht Teil der Zeichenkette, sondern begrenzen sie, "" bezeichnet den sogenannten Leerstring. Mit dem Zeichen + können Strings zusammengefügt werden: "Computer" + " " + "und" + " " + "Programmierung" ergibt "Computer und Programmierung". 04.10.2013 CuP - VO 14

Konstruktordefinition public klassenname(parameterliste) anweisungsliste Konstruktor erzeugt die Objekte der Klasse initialisiert dabei die Attribute 04.10.2013 CuP - VO 15

Methodendefinition public returntyp methodenname(parameterliste) anweisungsblock Wenn eine Methode einen Rückgabewert liefert, dann gibt returntyp den Typ des zurückgelieferten Werts an. Für eine Methode ohne Rückgabewert ist der returntyp void. 04.10.2013 CuP - VO 16

Parameterliste typ parametername,,typ parametername Die Parameterliste gibt an, welche Werte an den Konstruktor oder die Methode bei einem Aufruf übergeben werden müssen. Die Parameterliste kann auch leer sein. 04.10.2013 CuP - VO 17

Anweisungsblock { } anweisung1 anweisung2 Im Anweisungsblock eines Konstruktors oder einer Methode werden durch die Anweisungen jene Aktionen definiert, die beim Aufruf ausgeführt werden. 04.10.2013 CuP - VO 18

Anweisungen Zuweisung attributname = ausdruck; 04.10.2013 CuP - VO 19

Die Objektreferenz this Mit der Objektreferenz this kann ein Objekt immer sich selbst bezeichnen. Z.B.: this.titel Mit this kann zwischen Attributen und gleichnamigen Parametern unterschieden werden. Achtung: Gleichnamige Patameter sind eine mögliche Fehlerquelle, wenn auf this vergessen wird! 04.10.2013 CuP - VO 20

Die ArrayList Stellt eine Liste dar, in die mehrere Objekte gleichen Typs eingetragen werden können. Eine ArrayList ist selbst wieder ein Objekt. Die Klasse ArrayList ist nicht automatische verfügtbar (wie z.b. die Klasse String), sondern muss importiert werden: import java.util.arraylist; public class MyClass { } java.util bezeichnet das Java-Paket, das die Klasse ArrayList enthält. 04.10.2013 CuP - VO 21

Definition einer ArrayList ArrayList<typ> Für eine ArrayList wird auch der Typ der Objekte angegeben, die sie enthalten soll. Z.B. bezeichnet ArrayList<Buch> eine Liste von Buch-Objekten. 04.10.2013 CuP - VO 22

Erzeugen einer ArrayList new ArrayList<typ>() Erzeugt ein ArrayList-Objekt, das Objekte vom angegebenen Typ enthalten kann. Die erzeugte ArrayList ist zu Beginn leer, enthält also noch keine Objekte. 04.10.2013 CuP - VO 23

Hinzufügen von Elementen zu einer ArrayList public void add(typ objekt) Fügt das angegebene Objekt am Ende der Liste hinzu. Der Typ des Objekts muss mit dem Typ der Objekte übereinstimmen, die in der ArrayList gespeichert werden können. 04.10.2013 CuP - VO 24

Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik)

Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag 12:15 13:00 (Fragestunde/ Ersatztermin) Unterlagen Kurzskriptum, erhältlich in den Übungen Barnes & Kölling: Java lernen mit BlueJ. Web-Seite: Programmbeispiele, Folien, Übungsblätter, Software, Merkblätter. 04.10.2013 CuP - VO 2

Organisatorisches (Übungen) Aufgeteilt in 16 Gruppen Hilbertraum (Hauptgebäude) Computerraum IL+IT (RWZ) Repetitorium zu Computeranwendung und Programmierung Tutoren Freies Üben (Eulerraum im TTZ) Alles weitere erfahren Sie in den Übungen. 04.10.2013 CuP - VO 3

Inhalt der Lehrveranstaltung Objektorientiertes Programmieren in Java Objekte, Klassen, Interaktion zwischen Objekten Bedingte Anweisungen und Schleifen Arbeiten mit Listen 04.10.2013 CuP - VO 4

Beispiel eines 1. KNW (a) Schreiben Sie eine Klasse Buch mit dem Konstruktor public Buch(String autor, String titel, String isbn, int anzahlseiten, boolean isttaschenbuch, String sprache). isttaschenbuch hat den Wert true, wenn das Buch ein Taschenbuch ist, und ansonsten den Wert false. 04.10.2013 CuP - VO 5

Beispiel eines 1. KNW (b) Schreiben Sie weiters eine Klasse Buecherverzeichnis mit dem Konstruktor public Buecherverzeichnis(), der ein leeres Bücherverzeichnis erzeugt. 04.10.2013 CuP - VO 6

Beispiel eines 1. KNW (c) Implementieren Sie in der Klasse Buecherverzeichnis auch die folgenden Methoden: public void addbuch(buch einbuch) fügt einbuch dem Bücherverzeichnis hinzu. 04.10.2013 CuP - VO 7

Beispiel eines 1. KNW (d) public int gibanzahldeutscherbuecher() liefert die Anzahl der deutschsprachigen Bücher, d.h. jener Bücher, für die sprache den Wert "deutsch" hat. public ArrayList<Buch> gettaschenbuecher() liefert eine ArrayList mit den im Bücherverzeichnis vorhandenen Taschenbüchern. 04.10.2013 CuP - VO 8

Objektorientiertes Programmieren (OOP) Objekte zentrale Konzept der OOP Programme laufen an/in Objekten ab Klassenbeschreibung definiert die Eigenschaften der Objekte (dieser Klasse) welche Attribute wie werden Objekte erzeugt welche Methoden was bewirkt ein Methodenaufruf 04.10.2013 CuP - VO 9

Syntax und Semantik Programmsyntax Gibt die Schreibweise von Programmen in einer bestimmten Programmiersprache an. In Java wird die korrekte Syntax vom Compiler geprüft. Programmsemantik Gibt die Bedeutung eines Programms an. Was macht ein Programm? Kann durch Ausführen des Programms getestet werden. 04.10.2013 CuP - VO 10

Java: Klassendefinition public class klassenname { } attributliste konstruktordefinition methodenliste 04.10.2013 CuP - VO 11

Attributdefinition private typ attributname; Ein Typ definieren einen Wertebereich. 8 Basistypen int, double, boolean, long, char, byte, short, float. Objekttypen (z.b. String String) durch Angabe eines Klassennamens 04.10.2013 CuP - VO 12

Wichtige Basistypen int ganze Zahl zwischen -2 31,,2 31-1 double Gleitkommazahl (z.b. -1.23 oder 1.2e-4) boolean logischer Wahrheitswert: true true oder false 04.10.2013 CuP - VO 13

Typ String Zeichenkette "TICKET" "Computer und Programmieren" "" Die Anführungszeichen " sind nicht Teil der Zeichenkette, sondern begrenzen sie, "" bezeichnet den sogenannten Leerstring. Mit dem Zeichen + können Strings zusammengefügt werden: "Computer" + " " + "und" + " " + "Programmierung" ergibt "Computer und Programmierung". 04.10.2013 CuP - VO 14

Konstruktordefinition public klassenname(parameterliste) anweisungsliste Konstruktor erzeugt die Objekte der Klasse initialisiert dabei die Attribute 04.10.2013 CuP - VO 15

Methodendefinition public returntyp methodenname(parameterliste) anweisungsblock Wenn eine Methode einen Rückgabewert liefert, dann gibt returntyp den Typ des zurückgelieferten Werts an. Für eine Methode ohne Rückgabewert ist der returntyp void. 04.10.2013 CuP - VO 16

Parameterliste typ parametername,,typ parametername Die Parameterliste gibt an, welche Werte an den Konstruktor oder die Methode bei einem Aufruf übergeben werden müssen. Die Parameterliste kann auch leer sein. 04.10.2013 CuP - VO 17

Anweisungsblock { } anweisung1 anweisung2 Im Anweisungsblock eines Konstruktors oder einer Methode werden durch die Anweisungen jene Aktionen definiert, die beim Aufruf ausgeführt werden. 04.10.2013 CuP - VO 18

Anweisungen Zuweisung attributname = ausdruck; 04.10.2013 CuP - VO 19

Die Objektreferenz this Mit der Objektreferenz this kann ein Objekt immer sich selbst bezeichnen. Z.B.: this.titel Mit this kann zwischen Attributen und gleichnamigen Parametern unterschieden werden. Achtung: Gleichnamige Patameter sind eine mögliche Fehlerquelle, wenn auf this vergessen wird! 04.10.2013 CuP - VO 20

Die ArrayList Stellt eine Liste dar, in die mehrere Objekte gleichen Typs eingetragen werden können. Eine ArrayList ist selbst wieder ein Objekt. Die Klasse ArrayList ist nicht automatische verfügtbar (wie z.b. die Klasse String), sondern muss importiert werden: import java.util.arraylist; public class MyClass { } java.util bezeichnet das Java-Paket, das die Klasse ArrayList enthält. 04.10.2013 CuP - VO 21

Definition einer ArrayList ArrayList<typ> Für eine ArrayList wird auch der Typ der Objekte angegeben, die sie enthalten soll. Z.B. bezeichnet ArrayList<Buch> eine Liste von Buch-Objekten. 04.10.2013 CuP - VO 22

Erzeugen einer ArrayList new ArrayList<typ>() Erzeugt ein ArrayList-Objekt, das Objekte vom angegebenen Typ enthalten kann. Die erzeugte ArrayList ist zu Beginn leer, enthält also noch keine Objekte. 04.10.2013 CuP - VO 23

Hinzufügen von Elementen zu einer ArrayList public void add(typ objekt) Fügt das angegebene Objekt am Ende der Liste hinzu. Der Typ des Objekts muss mit dem Typ der Objekte übereinstimmen, die in der ArrayList gespeichert werden können. 04.10.2013 CuP - VO 24