抽象メソッド
現時点では処理内容が未定で実装をもたず、メソッドや引数などの定義だけ宣言するメソッド。
処理内容は子クラスなどで記述。クラスによって処理内容を変えられる。
抽象メソッドの宣言
public abstrct 戻り値の型 メソッド名(引数リスト);
宣言するメリット
・オーバーライドの強制
・何もしないメソッドなのか、現時点で処理内容が確定できないメソッドなのか区別ができる
抽象メソッドを含むクラスの宣言
抽象メソッドを1つでも含むクラスは抽象クラスの宣言を行う
public abstract class クラス名 {
}
宣言するメリット
・抽象として宣言されるとnewによるインスタンス化が禁止される。
抽象クラスを継承した子クラスで必ず、メソッドの内容を記述する必要はなく、孫クラスやひ孫クラスなどどこかの時点で記述できる
インタフェースなどもでてき意味は分かるけど、ぴんと来ないというか使いこなせない
為になりそうな記事がいくつかあったので読んで理解したいと思います