final で修飾されたクラス
・継承(拡張)することができないのでサブクラスを作成できない。
・したがってどのメソッドもオーバーライドできない。
String クラスなどは final クラスです。
abstract クラス(抽象クラス)
abstract で修飾されたクラス
・インスタンス化できない。
・継承されることを目的とする
・abstract メソッド(抽象メソッド)を含むクラスは必ず abstract クラス(抽象クラス)である必要がある。
・抽象クラスに非抽象メソッドを含めることはできる。
<サンプル>
public class Sample {
public static void main(String[] args) {
Super obj = new Sub();
obj.func();
}
}
abstract class Super {
abstract void func();
}
class Sub extends Super {
@Override
void func() {}
}
0 件のコメント:
コメントを投稿