Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Matthias Hoffmann
WIDAS-Semester-2
Commits
48c9457f
Commit
48c9457f
authored
Apr 11, 2020
by
matthias
Browse files
JavaDoc Kommentare
parent
e7b1f4df
Changes
7
Hide whitespace changes
Inline
Side-by-side
Uebungen/OOP_3und4/src/videothek/CD.java
View file @
48c9457f
...
...
@@ -5,11 +5,20 @@ public class CD extends Medium {
protected
int
playTimeMin
;
protected
int
amountTracks
;
public
CD
(){
/**
* Standardkonstruktor
*/
public
CD
()
{
}
public
CD
(
float
price
){
/**
* Kontruktor: Das Medium CD wird erstellt. Preis wird von der Mutterklasse "Medium" übernommen
*
* @param price
*/
public
CD
(
float
price
)
{
super
(
price
);
}
...
...
Uebungen/OOP_3und4/src/videothek/HoerspielCD.java
View file @
48c9457f
...
...
@@ -5,9 +5,22 @@ public class HoerspielCD extends CD {
public
String
author
;
public
String
reader
;
/**
* Kontruktor: Das Medium Hörspiel-CD wird erstellt. Preis wird von der Mutterklasse "CD" übernommen
*
* @param price
*/
public
HoerspielCD
(
float
price
)
{
super
(
price
);
}
/**
* Methode: Das Medium wird ausgeliehen und ein Hörspiel kostet generell 1,50 Euro mehr als jede andere CD
*
* @return price + 1.50
*/
@Override
public
float
lendMedia
()
{
return
super
.
lendMedia
()
+
1.5f
;
return
super
.
lendMedia
()
+
1.5f
;
}
}
Uebungen/OOP_3und4/src/videothek/Medium.java
View file @
48c9457f
...
...
@@ -5,17 +5,28 @@ public class Medium {
protected
float
price
;
public
boolean
isLent
;
/**
* Standardkonstruktor
*/
public
Medium
()
{
}
/**
* Kontruktor: Mutterklasse Medium wird erstellt der den Status vorerst auf "nicht verliehen" setzt.
*
* @param price
*/
public
Medium
(
float
price
)
{
this
.
price
=
price
;
isLent
=
false
;
}
/**
* Methode: Das Medium wird auf ausgeliehen gesetzt und der Preis übergeben
*
* @return
*/
public
float
lendMedia
()
{
isLent
=
true
;
return
price
;
...
...
Uebungen/OOP_3und4/src/videothek/MusikCD.java
View file @
48c9457f
...
...
@@ -5,13 +5,23 @@ public class MusikCD extends CD {
public
String
nameAlbum
;
public
String
artist
;
/**
* Kontruktor: Das Medium Musik-CD wird erstellt. Preis wird von der Mutterklasse "CD" übernommen
*
* @param price
* @param playTimeMin Wenn es weniger als 20 Minuten sind, dann wird price neu berechnet (-0.50)
*/
public
MusikCD
(
float
price
,
int
playTimeMin
)
{
super
(
price
);
super
.
playTimeMin
=
playTimeMin
;
super
(
price
);
super
.
playTimeMin
=
playTimeMin
;
}
/**
* Methode: Das Medium wird ausgeliehen und eine Musik-CD mit weniger als 20 Minten Spielzeit kostet 0,50 Euro weniger
*
* @return
*/
@Override
public
float
lendMedia
()
{
if
(
playTimeMin
<=
20
)
{
...
...
Uebungen/OOP_3und4/src/videothek/Programm.java
View file @
48c9457f
...
...
@@ -4,19 +4,35 @@ package videothek;
public
class
Programm
{
public
static
void
main
(
String
[]
args
)
{
/**
* Objekt videothek wird erstellt
*/
Videothek
videothek
=
new
Videothek
();
/**
* Array allMedia wird mit fünf Medien gefüllt
*/
videothek
.
allMedia
[
0
]
=
new
VHS
(
3
,
true
);
videothek
.
allMedia
[
1
]
=
new
VHS
(
3
,
tru
e
);
videothek
.
allMedia
[
2
]
=
new
VHS
(
3
,
true
);
videothek
.
allMedia
[
1
]
=
new
VHS
(
3
,
fals
e
);
videothek
.
allMedia
[
2
]
=
new
MusikCD
(
3
,
30
);
videothek
.
allMedia
[
3
]
=
new
MusikCD
(
3
,
10
);
videothek
.
allMedia
[
4
]
=
new
VHS
(
3
,
true
);
videothek
.
allMedia
[
5
]
=
new
VHS
(
3
,
false
);
videothek
.
allMedia
[
4
]
=
new
HoerspielCD
(
3
);
/**
* Methodenaufruf aus der Klasse Videothek
* - Die ersten drei Medien ausleihen
* - Die letzten drei Medien ausleihen
* - Alle Medien ausleihen
* - Alle Medien zurückgeben
*/
//videothek.lend
AllMedia(allMedia
);
//videothek.lend
FirstThreeMedia(
);
videothek
.
lendLastThreeMedia
();
//System.out.println(lentMedia[2].price);
//videothek.lendAllMedia();
//videothek.returnAllMedia();
}
...
...
Uebungen/OOP_3und4/src/videothek/VHS.java
View file @
48c9457f
...
...
@@ -4,21 +4,28 @@ public class VHS extends Medium {
boolean
isClassic
;
public
VHS
(
float
price
,
boolean
isClassic
){
/**
* Kontruktor: Das Medium VHS wird erstellt. Preis wird von der Mutterklasse "Medium" übernommen
*
* @param price
* @param isClassic Bei true ist der Preis höher
*/
public
VHS
(
float
price
,
boolean
isClassic
)
{
super
(
price
);
this
.
isClassic
=
isClassic
;
}
/**
* Methode: Das Medium wird ausgeliehen und ein Klassiker kostet 1,00 Euro mehr
*
* @return price + 1
*/
@Override
public
float
lendMedia
()
{
if
(
isClassic
)
{
return
super
.
lendMedia
()
+
1
;
}
return
super
.
lendMedia
();
}
}
Uebungen/OOP_3und4/src/videothek/Videothek.java
View file @
48c9457f
...
...
@@ -2,10 +2,19 @@ package videothek;
public
class
Videothek
{
/**
* Anlegen der beiden Array für alle bzw. nur den ausgeliehenen Medien
*/
Medium
[]
allMedia
=
new
Medium
[
6
];
Medium
[]
lentMedia
=
new
Medium
[
6
];
Medium
[]
allMedia
=
new
Medium
[
5
];
Medium
[]
lentMedia
=
new
Medium
[
5
];
/**
* Methode: Ausliehen aller Medien im Array
*
* @param medien
* @return Gibt Gesamtpreis des kompletten Arrays aus
*/
public
float
lendAllMedia
(
Medium
...
medien
)
{
float
summary
=
0
;
...
...
@@ -21,6 +30,12 @@ public class Videothek {
return
summary
;
}
/**
* Methode: Gibt alle Medien wieder zurück
*
* @param medien
*/
public
void
returnAllMedia
(
Medium
...
medien
)
{
for
(
Medium
m
:
medien
)
{
m
.
isLent
=
false
;
...
...
@@ -28,6 +43,11 @@ public class Videothek {
}
}
/**
* Methode: Leiht nur die ersten drei Medien im Array aus
*
* @return Gibt Wert der ersten drei Medien aus
*/
public
float
lendFirstThreeMedia
()
{
float
summary
=
0
;
...
...
@@ -38,9 +58,15 @@ public class Videothek {
return
summary
;
}
/**
* Methode: Leiht nur die letzten drei Medien im Array aus
*
* @return Gibt den Wert der letzten drei Medien
*/
public
float
lendLastThreeMedia
()
{
float
summary
=
0
;
for
(
int
i
=
3
;
i
<
6
;
i
++)
{
for
(
int
i
=
2
;
i
<
5
;
i
++)
{
summary
+=
allMedia
[
i
].
lendMedia
();
}
System
.
out
.
println
(
"Der Gesamtpreis beträgt: "
+
summary
+
" Euro."
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment