Merge branch 'master' of git.haw-hamburg.de:pm1-tutorium/slides
This commit is contained in:
commit
1945e9464d
47
abstract.md
47
abstract.md
|
@ -5,3 +5,50 @@ url: https://git.haw-hamburg.de/pm1-tutorium/slides
|
|||
header: Programmieren 1 **Tutorium**
|
||||
footer: Henri Burau und Eva Meinen
|
||||
-->
|
||||
|
||||
# abstrakte Methoden
|
||||
|
||||
Eine Methode ohne Implementation
|
||||
|
||||
```java
|
||||
abstact double getArea();
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# abstrakte Methoden
|
||||
|
||||
Eine Klasse mit mindestens einer abstrakten Methode muss abstrakt sein
|
||||
|
||||
Es können keine Objekte einer abstrakten Klasse erzeugt werden
|
||||
|
||||
```java
|
||||
abstract class Shape {
|
||||
abstact double getArea();
|
||||
String toString() {
|
||||
return "Shape";
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
Es können keine Objekte einer abstrakten Klasse erzeugt werden, jedoch Variablen dieser ein Objekt einer nicht abstrakten Subklasse aufnehmen:
|
||||
|
||||
```java
|
||||
class Circle extends Shape {
|
||||
private double radius;
|
||||
Circle(int rad) {radius = rad; }
|
||||
|
||||
double getArea(){
|
||||
return 3.14 * radius * radius;
|
||||
}
|
||||
}
|
||||
//Shape shape1 = newCircle(4);
|
||||
//System.out.printf("%.2f", shape1.getArea());
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# Übung
|
||||
|
||||
* Lasse die Klasse sheep (und andere Tiere) von einer abstrakten Klasse animal erben. Ändere den Code and den richtigen Stellen ab.
|
27
interface.md
27
interface.md
|
@ -5,3 +5,30 @@ url: https://git.haw-hamburg.de/pm1-tutorium/slides
|
|||
header: Programmieren 1 **Tutorium**
|
||||
footer: Henri Burau und Eva Meinen
|
||||
-->
|
||||
|
||||
# Interfaces
|
||||
|
||||
Schnittstelle
|
||||
|
||||
nur Methodendeklaration (öffentliche Methoden)
|
||||
|
||||
```java
|
||||
interface Shape {
|
||||
double getArea();
|
||||
String toString();
|
||||
}
|
||||
```
|
||||
---
|
||||
|
||||
Erbende Klassen implementieren ein Interface (auch mehr als eines möglich)
|
||||
|
||||
```java
|
||||
class Circle implements Shape {
|
||||
private double radius;
|
||||
double getArea(){
|
||||
return 3.14 * radius * radius;
|
||||
}
|
||||
String toString() {
|
||||
return "Circle";}
|
||||
}
|
||||
```
|
Loading…
Reference in New Issue