編集の要約なし |
編集の要約なし |
||
1行目: | 1行目: | ||
< [[Java基本文法]] | < [[Java基本文法]] | ||
* | * クラスとはサブルーティーンを論理的にまとめて、整理整合するための仕組み | ||
* フォルダ1 (Interface) -> フォルダ2 (SuperClass) -> SubClassファイル群、と3階層整理できる | * フォルダ1 (Interface) -> フォルダ2 (SuperClass) -> SubClassファイル群、と3階層整理できる | ||
* 3階層整理をすると各クラス群の役割状況、メソッドやフィールドの使い回し状況が俯瞰できる | * 3階層整理をすると各クラス群の役割状況、メソッドやフィールドの使い回し状況が俯瞰できる |
2019年6月30日 (日) 13:21時点における版
< Java基本文法
- クラスとはサブルーティーンを論理的にまとめて、整理整合するための仕組み
- フォルダ1 (Interface) -> フォルダ2 (SuperClass) -> SubClassファイル群、と3階層整理できる
- 3階層整理をすると各クラス群の役割状況、メソッドやフィールドの使い回し状況が俯瞰できる
- この本質を知っていれば「継承」だの「親子関係」だの、分かりづらいノイズ概念は不要になる
ヒエラルキー
1. インターフェース
- フィールドには自動的に「public static final」が付き定数になる
- メソッドには自動的に「public abstract」が付く
- 「default」を付ければデフォルトメソッドを定義できる(Java8から)
2. スーパークラス
- 「abstract」が付いたクラスはnewできなくなり、使い回し専用クラスになる
- 「final」が付いたクラスはextendsできなくなり、完成品クラスとなる
- 「final」が付いたメソッドはサブでオーバーライドできない
- 同名メソッドで、インターフェースのメソッドをオーバーロードできる
3. サブクラス
- 同名メソッドで、スーパークラスのメソッドをオーバーロードできる
- オーバーライドしていても「super」でスーパークラスのメソッドにアクセスできる