diff options
| -rw-r--r-- | bank-eiffel/bank.e | 22 | ||||
| -rw-r--r-- | bank-eiffel/tests/test_account.e | 6 | ||||
| -rw-r--r-- | eiffel-fragen/eiffel-fragen.txt | 2 |
3 files changed, 15 insertions, 15 deletions
diff --git a/bank-eiffel/bank.e b/bank-eiffel/bank.e index 67ee067..4c48e48 100644 --- a/bank-eiffel/bank.e +++ b/bank-eiffel/bank.e | |||
| @@ -55,26 +55,26 @@ feature -- Basic operations | |||
| 55 | 55 | ||
| 56 | fail_kovariant | 56 | fail_kovariant |
| 57 | local | 57 | local |
| 58 | r1: RETIREE | 58 | retiree: RETIREE |
| 59 | s1: STUDENT | 59 | student: STUDENT |
| 60 | stdAcc1: STUDENTACCOUNT | 60 | studentaccount: STUDENTACCOUNT |
| 61 | acc1: ACCOUNT | 61 | account: ACCOUNT |
| 62 | 62 | ||
| 63 | do | 63 | do |
| 64 | -- studi account mit normalen studi erstellen | 64 | -- studi account mit normalen studi erstellen |
| 65 | create r1.make("a", "b") | 65 | create retiree.make("a", "b") |
| 66 | create s1.make("a", "b") | 66 | create student.make("a", "b") |
| 67 | create stdAcc1.make (s1, 0.01, 0.02, -50.0, [0.01, 0.022], [0.01, 0.02], [-100.0, -50.0]) | 67 | create studentaccount.make (student, 0.01, 0.02, -50.0, [0.01, 0.022], [0.01, 0.02], [-100.0, -50.0]) |
| 68 | acc1 := stdAcc1 -- upcast, acc1 erwartet PERSON | 68 | account := studentaccount -- upcast, account erwartet PERSON |
| 69 | -- kompiler akzeptiert das folgende, weil PERSON erwartet wird | 69 | -- compiler akzeptiert das folgende, weil PERSON erwartet wird |
| 70 | -- eigtl ist es eben ein studi acc, der RETIREES nicht akzeptiert, also laufzeitfehler | 70 | -- eigtl ist es eben ein studi acc, der RETIREES nicht akzeptiert, also laufzeitfehler |
| 71 | acc1.add_authorized_signer (r1) | 71 | account.add_authorized_signer (retiree) |
| 72 | end | 72 | end |
| 73 | 73 | ||
| 74 | session | 74 | session |
| 75 | do | 75 | do |
| 76 | -- das auskommentieren, dann bekommt ihr eine exception wegen kovariant (das ist ein methodenaufruf): | 76 | -- das auskommentieren, dann bekommt ihr eine exception wegen kovariant (das ist ein methodenaufruf): |
| 77 | --fail_kovariant | 77 | fail_kovariant |
| 78 | from | 78 | from |
| 79 | until | 79 | until |
| 80 | over | 80 | over |
diff --git a/bank-eiffel/tests/test_account.e b/bank-eiffel/tests/test_account.e index 6e49132..5e2e3e3 100644 --- a/bank-eiffel/tests/test_account.e +++ b/bank-eiffel/tests/test_account.e | |||
| @@ -184,11 +184,11 @@ feature -- Test routines | |||
| 184 | when 3 then | 184 | when 3 then |
| 185 | create account.make(student, 0.01, 0.02, -50.0, [0.01, 0.022], [0.01, 0.02], [-100.0, -50.0]) | 185 | create account.make(student, 0.01, 0.02, -50.0, [0.01, 0.022], [0.01, 0.02], [-100.0, -50.0]) |
| 186 | --account.add_authorized_signer (person) | 186 | --account.add_authorized_signer (person) |
| 187 | assert("STUDENTACCOUNT_ONE_STUDENT_ONLY_2", False) | 187 | --assert("STUDENTACCOUNT_ONE_STUDENT_ONLY_2", False) |
| 188 | when 4 then | 188 | when 4 then |
| 189 | create account.make(student, 0.01, 0.02, -50.0, [0.01, 0.022], [0.01, 0.02], [-100.0, -50.0]) | 189 | create account.make(student, 0.01, 0.02, -50.0, [0.01, 0.022], [0.01, 0.02], [-100.0, -50.0]) |
| 190 | --daccount.add_authorized_signer (retiree) | 190 | --account.add_authorized_signer (retiree) |
| 191 | assert("STUDENTACCOUNT_ONE_STUDENT_ONLY_3", False) | 191 | --assert("STUDENTACCOUNT_ONE_STUDENT_ONLY_3", False) |
| 192 | else | 192 | else |
| 193 | end | 193 | end |
| 194 | rescue | 194 | rescue |
diff --git a/eiffel-fragen/eiffel-fragen.txt b/eiffel-fragen/eiffel-fragen.txt index 0c46496..62fcef2 100644 --- a/eiffel-fragen/eiffel-fragen.txt +++ b/eiffel-fragen/eiffel-fragen.txt | |||
| @@ -22,4 +22,4 @@ Die Zusicherungen wirken sich zwangsläufig stark auf die Laufzeit aus. Sie sind | |||
| 22 | 22 | ||
| 23 | 23 | ||
| 24 | ----------------------------------------------------------------------------------------- | 24 | ----------------------------------------------------------------------------------------- |
| 25 | - Vereinfachen kovariante Eingangsparametertypen die Programmierung? Unter welchen Bedingungen ist das so? \ No newline at end of file | 25 | - Vereinfachen kovariante Eingangsparametertypen die Programmierung? Unter welchen Bedingungen ist das so? |
