JAVA101 - クラスの修飾子
abstract
abstract class: 抽象クラス。
実装される機能を宣言するために利用する。
インスタンス化できない。
インスタンス化しようとするとコンパイル・エラー。
同一の継承階層に属するクラスに共通する処理を持つスーパークラスとして定義する。
final
拡張できない。
extendsできない。
実装したメソッドがオーバーライドされないために利用する。
クラスがfinalの場合、そのメソッドもすべてfinal。
final classを拡張するとコンパイル・エラー。
abstractとfinalを同時に指定することはできない。
アクセス・レベル
アクセス・レベル
同一パッケージ
同一クラス
サブクラス
すべて
public
OK
OK
OK
OK
protected
OK
OK
OK
無印
OK
OK
private
OK
無印
同一パッケージ内からのみ参照可能。