Merge branch 'main' of https://gitty.informatik.hs-mannheim.de/3013050/CPD
commit
1928a8e526
|
|
@ -24,11 +24,75 @@ class Buch {
|
||||||
}
|
}
|
||||||
|
|
||||||
class Page {
|
class Page {
|
||||||
const Page({this.number = 0});
|
|
||||||
final int number;
|
final int number;
|
||||||
|
|
||||||
|
Page(int raw) : number = clean(raw);
|
||||||
|
Page.numbered(this.number);
|
||||||
|
Page.empty() : this(0);
|
||||||
|
Page.first(): number = 1;
|
||||||
|
|
||||||
|
static int clean(int n) {
|
||||||
|
print("Defaul called");
|
||||||
|
return n;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
mixin Logger {
|
||||||
|
void log(String msg) {
|
||||||
|
print("[LOG] ${super.runtimeType}: $msg");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract class Book with Logger {
|
||||||
|
bool gelesen;
|
||||||
|
|
||||||
|
Book(this.gelesen);
|
||||||
|
|
||||||
|
void lesen() {
|
||||||
|
log("Lesen gestartet");
|
||||||
|
gelesen = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Taschenbuch extends Book {
|
||||||
|
Taschenbuch(bool gelesen) :
|
||||||
|
super(gelesen);
|
||||||
|
}
|
||||||
|
|
||||||
|
class HashBuch {
|
||||||
|
final String titel;
|
||||||
|
final int seiten;
|
||||||
|
|
||||||
|
HashBuch(this.titel, this.seiten);
|
||||||
|
|
||||||
|
@override
|
||||||
|
int get hashCode => Object.hash(titel, seiten);
|
||||||
|
@override
|
||||||
|
bool operator ==(Object other) => other is HashBuch && other.titel == titel && other.seiten == seiten;
|
||||||
}
|
}
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
|
final zahlenFixed = List.filled(4, 25);
|
||||||
|
// zahlenFixed.add(5); Fehler
|
||||||
|
|
||||||
|
final hb1 = HashBuch("Dart", 1337);
|
||||||
|
final hb2 = HashBuch("Dart", 1337);
|
||||||
|
print(hb1.hashCode);
|
||||||
|
print(hb2.hashCode);
|
||||||
|
print(hb1 == hb2);
|
||||||
|
|
||||||
|
var tb = Taschenbuch(false);
|
||||||
|
tb.lesen();
|
||||||
|
|
||||||
|
print("Default");
|
||||||
|
var s1 = Page(1);
|
||||||
|
print("Numbered");
|
||||||
|
var s2 = Page.numbered(2);
|
||||||
|
print("Empty");
|
||||||
|
var s3 = Page.empty();
|
||||||
|
print("First");
|
||||||
|
var s4 = Page.first();
|
||||||
|
|
||||||
final p = Person();
|
final p = Person();
|
||||||
p.setName = "Lils";
|
p.setName = "Lils";
|
||||||
// print(p.getName);
|
// print(p.getName);
|
||||||
|
|
@ -38,18 +102,20 @@ void main() {
|
||||||
// var display = nickname ?? "Kein Nickname";
|
// var display = nickname ?? "Kein Nickname";
|
||||||
// print(display); // Kein Nickname
|
// print(display); // Kein Nickname
|
||||||
|
|
||||||
final book = Buch("Name", seitenzahl: 10);
|
// final book = Buch("Name", seitenzahl: 10);
|
||||||
|
|
||||||
print('Seitennummer eingeben:');
|
// print('Seitennummer eingeben:');
|
||||||
int? seitennummer = int.tryParse(stdin.readLineSync() ?? '');
|
// int? seitennummer = int.tryParse(stdin.readLineSync() ?? '');
|
||||||
|
|
||||||
|
// late Page seite;
|
||||||
|
// if (seitennummer != null) {
|
||||||
|
// seite = Page(number: seitennummer);
|
||||||
|
// }
|
||||||
|
// else {
|
||||||
|
// seite = Page();
|
||||||
|
// }
|
||||||
|
|
||||||
|
// print(seite);
|
||||||
|
|
||||||
late Page seite;
|
|
||||||
if (seitennummer != null) {
|
|
||||||
seite = Page(number: seitennummer);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
seite = Page();
|
|
||||||
}
|
|
||||||
|
|
||||||
print(seite);
|
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue