Merge branch 'master' of git.haw-hamburg.de:pm1-tutorium/slides
This commit is contained in:
commit
e17387e281
|
@ -0,0 +1,63 @@
|
||||||
|
<!--
|
||||||
|
title: Enums
|
||||||
|
description: Folien für Enums in Programmieren 1
|
||||||
|
url: https://git.haw-hamburg.de/pm1-tutorium/slides
|
||||||
|
header: Programmieren 1 **Tutorium**
|
||||||
|
footer: Henri Burau und Eva Meinen
|
||||||
|
-->
|
||||||
|
|
||||||
|
# Enums
|
||||||
|
Enums sind besondere Arten von Klassen, die eine Gruppe von Konstanten repräsentieren.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Deklaration
|
||||||
|
|
||||||
|
```java
|
||||||
|
enum Direction {
|
||||||
|
NORTH,
|
||||||
|
EAST,
|
||||||
|
SOUTH,
|
||||||
|
WEST
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Benutzung
|
||||||
|
|
||||||
|
```java
|
||||||
|
Direction artic = Direction.NORTH;
|
||||||
|
```
|
||||||
|
|
||||||
|
oder
|
||||||
|
|
||||||
|
```java
|
||||||
|
import static Direction.*;
|
||||||
|
...
|
||||||
|
Direction malle = SOUTH;
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Methoden
|
||||||
|
|
||||||
|
Da Enums Klassen sind können sie auch Methoden deklarieren.
|
||||||
|
|
||||||
|
```java
|
||||||
|
enum Direction {
|
||||||
|
NORTH,
|
||||||
|
EAST,
|
||||||
|
SOUTH,
|
||||||
|
WEST
|
||||||
|
|
||||||
|
public String ascii() {
|
||||||
|
switch(this) {
|
||||||
|
case NORTH: return "^\n|";
|
||||||
|
case EAST: return "->";
|
||||||
|
case SOUTH: return "|\nv";
|
||||||
|
case WEST: return "<-";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
Binary file not shown.
After Width: | Height: | Size: 400 KiB |
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 15 KiB |
|
@ -0,0 +1,16 @@
|
||||||
|
<!--
|
||||||
|
title: Klassendiagramme
|
||||||
|
description: Folien für Klassendiagramme in Programmieren 1
|
||||||
|
url: https://git.haw-hamburg.de/pm1-tutorium/slides
|
||||||
|
header: Programmieren 1 **Tutorium**
|
||||||
|
footer: Henri Burau und Eva Meinen
|
||||||
|
-->
|
||||||
|
|
||||||
|
# UML-Klassendiagramme
|
||||||
|
**Unified Modeling Language (UML)** gibt viele verschiedene Definitionen von Diagrammen für die Nutzung in der Informatik vor. Darunter auch für Klassen.
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|

|
||||||
|
|
|
@ -45,13 +45,13 @@ Methoden werden über ihren Identifier aufgerufen. Alle deklarierten Parameter *
|
||||||
|
|
||||||
```java
|
```java
|
||||||
public void main(String[] args) {
|
public void main(String[] args) {
|
||||||
int sides = 10;
|
int radius = 10;
|
||||||
int area = getSpuareArea(sides);
|
double area = getCircleArea(radius);
|
||||||
System.out.printf("The area of the square is %d", area);
|
System.out.printf("The area of the square is %d", area);
|
||||||
}
|
}
|
||||||
|
|
||||||
public double getCircleArea(double radius) {
|
public double getCircleArea(double radius) {
|
||||||
int result = 3.141 * radius * radius;
|
double result = 3.141 * radius * radius;
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
|
@ -0,0 +1,51 @@
|
||||||
|
<!--
|
||||||
|
title: Termin 9
|
||||||
|
description: Folien für das erste Tutorium in Programmieren 2
|
||||||
|
url: https://git.haw-hamburg.de/pm2-tutorium/slides
|
||||||
|
header: Programmieren 1 **Tutorium**
|
||||||
|
footer: Henri Burau und Eva Meinen
|
||||||
|
-->
|
||||||
|
|
||||||
|
# Tutorium Termin 10
|
||||||
|
* Gitlab (Folien-Quellcode) https://git.haw-hamburg.de/pm1-tutorium/slides
|
||||||
|
* Lösungen der Aufgaben https://git.haw-hamburg.de/pm1-tutorium/code
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Ablauf
|
||||||
|
|
||||||
|
- Fragen
|
||||||
|
- Online-Fragen
|
||||||
|
- Themen
|
||||||
|
* UML-Klassendiagramme
|
||||||
|
* Dynamic Stack
|
||||||
|
* Enums
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Fragen
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Online Fragen
|
||||||
|
arsnova.eu/mobile
|
||||||
|
|
||||||
|
Code: 13 84 44 10
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Implementierung StringStack
|
||||||
|
|
||||||
|
- Wir wollen zuerst gemeinsam und dann einzeln die Klasse `StringStack` implementieren
|
||||||
|
|
||||||
|
- Ein `StringStack` besteht aus mehreren `StringNode`s, die einen `String` und den nachfolgenen `StringNode` halten
|
||||||
|
|
||||||
|
- Methoden: `push(String)`, `boolean isEmpty()`, `String pop()`, `String top()`, `int getDepth()` und `boolean contains(String)`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Angebot: Übungsaufgaben ViaMint
|
||||||
|
|
||||||
|
- auf viamint.haw-hamburg.de (Anmeldung mit aKennung)
|
||||||
|
|
||||||
|
- E-Assessment -> Programmieren 1 Tutorium (SHF) -> Termin10
|
|
@ -0,0 +1,43 @@
|
||||||
|
<!--
|
||||||
|
title: Termin 11
|
||||||
|
description: Folien für Termin11 in Programmieren 1
|
||||||
|
url: https://git.haw-hamburg.de/pm1-tutorium/slides
|
||||||
|
header: Programmieren 1 **Tutorium**
|
||||||
|
footer: Henri Burau und Eva Meinen
|
||||||
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
# Tutorium Termin 11
|
||||||
|
* Gitlab (Folien-Quellcode) https://git.haw-hamburg.de/pm1-tutorium/slides
|
||||||
|
* Lösungen der Aufgaben https://git.haw-hamburg.de/pm1-tutorium/code
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Ablauf
|
||||||
|
|
||||||
|
- Fragen
|
||||||
|
- Online-Fragen
|
||||||
|
- Themen
|
||||||
|
* Generizität
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Fragen
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Online Fragen
|
||||||
|
arsnova.eu/mobile
|
||||||
|
|
||||||
|
Code: 47 49 74 97
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
- Implementiere das Softwaresystem aus dem Klassendiagramm.
|
||||||
|
- Tiere aus der `Barn` sind `300 Money` wert, Tiere aus der `FreeRangeBarn` das doppelte.
|
||||||
|
- Füge ein `Chicken`hinzu und ändere die Geräusche der Tiere:
|
||||||
|
- `Cow` = `Moo`
|
||||||
|
- `Sheep` = `Baa`
|
||||||
|
- `Chicken` = `Bok Bok`
|
||||||
|
|
||||||
|

|
Loading…
Reference in New Issue