回答編集履歴

2

追記

2023/05/22 07:10

投稿

episteme
episteme

スコア16612

test CHANGED
@@ -2,5 +2,11 @@
2
2
 
3
3
  「うまいこといかんかったら例外投げるよ」がスーパータイプの仕様に含まれているなら、
4
4
  リスコフの置換原則に違反しません。
5
+ ```Java
6
+ interface Rectangle {
7
+ public void setWidth(int width) throws AssertionError; // うまいこといかんかったら
8
+ public void setHeight(int height) throws AssertionError; // 例外投げるよ(ちゃんとcatchしてね!)
9
+ }
10
+ ```
5
11
 
6
12
  スーパータイプを使ってちゃんと動くプログラムなら、それをサブタイプに取り換えてもちゃんと動く(どちらなのかに応じてプログラムをいぢくる/分岐する必要がない)ってことですから。

1

追記

2023/05/22 07:02

投稿

episteme
episteme

スコア16612

test CHANGED
@@ -2,3 +2,5 @@
2
2
 
3
3
  「うまいこといかんかったら例外投げるよ」がスーパータイプの仕様に含まれているなら、
4
4
  リスコフの置換原則に違反しません。
5
+
6
+ スーパータイプを使ってちゃんと動くプログラムなら、それをサブタイプに取り換えてもちゃんと動く(どちらなのかに応じてプログラムをいぢくる/分岐する必要がない)ってことですから。