Java のfinal クラス
このチュートリアルでは、例を使用して final
クラスのトピックについて説明します。final
は Java のキーワードであり、変数、メソッド、およびクラスを使用してさまざまなコンテキストで使用できます。
すべてのコンテキストでのアクセスをある程度制限します。final クラスについて話し合います。
Java で final
クラスを使用してクラスを制限する
キーワード final
を持つクラスは、final クラスと呼ばれます。クラスで final
キーワードを使用して、クラスが他のクラスに継承されるように制限します。
拡張機能を保護したい場合は、クラスを最終版にします。final クラスは不変であり、変更できないため、その利点の 1つはセキュリティです。
以下の例では、2つのクラスがあります。ファーストクラスの ExampleClass1
には main()
メソッドがあり、セカンドクラスの ExampleClass2
では、final
キーワードを使用してfinal クラスにします。
ExampleClass1
の extends
キーワードを使用して ExampleClass2
を拡張すると、final クラスを継承できないというエラーが出力に表示されます。
class ExampleClass1 extends ExampleClass2 {
public static void main(String[] args) {}
}
final class ExampleClass2 {
int abc = 30;
}
出力:
java: cannot inherit from final com.tutorial.ExampleClass2
final クラスを拡張することはできませんが、クラスのプロパティまたはメソッドにアクセスしたい場合はどうなりますか?
final
キーワードを使用する場合、クラスを拡張することはできませんが、そのオブジェクトを作成してその関数と変数にアクセスできることに注意してください。
この例には 2つのクラスがあります。1つはfinal クラス ExampleClass2
であり、もう 1つのクラス ExampleClass1
は main()
メソッドを実行するために必要です。
ExampleClass2
クラスのオブジェクトを作成してから、整数変数である abc
の値を出力します。
ここでは継承を使用しないため、final の場合でもクラスとその変数にアクセスできます。
class ExampleClass1 {
public static void main(String[] args) {
ExampleClass2 exampleClass2 = new ExampleClass2();
System.out.println(exampleClass2.abc);
}
}
final class ExampleClass2 {
int abc = 30;
}
出力:
30
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn