Open LeoAndo opened 2 years ago
スーパークラス型の変数があり、その変数にサブクラスのインスタンスが代入されているとする。
そのとき、instanceof
などでサブクラスの種類を特定せずにプログラムが動く設計は良い!
InputStreamはTemplate Methodパターンで実装されている。 https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/io/InputStream.html#read()
テンプレートとなるメソッドをスーパークラスで定義し処理の枠組みを定め、 サブクラスでその具体的内容を定めるようなデザインパターンをTemplate Methodパターンという。