の 最後のキーワード Javaではユーザーを制限するために使用されます。 java の Final キーワードは、さまざまなコンテキストで使用できます。最終的には次のようになります。
- 変数
- 方法
- クラス
Final キーワードは変数に適用できます。値を持たない Final 変数は、空白の Final 変数または初期化されていない Final 変数と呼ばれます。コンストラクター内でのみ初期化できます。空白の最終変数は静的であることもでき、静的ブロック内でのみ初期化されます。これらについて詳しく学んでいきます。まずはfinalキーワードの基本を学びましょう。
私のiPhoneアンドロイドを見つけてください
1) Java 最終変数
任意の変数をfinalにすると、final変数の値は変更できなくなります(定数になります)。
最終変数の例
ファイナル変数speedlimitがあります。この変数の値を変更しようとしていますが、一度値が割り当てられたファイナル変数は変更できないため、変更できません。
class Bike9{ final int speedlimit=90;//final variable void run(){ speedlimit=400; } public static void main(String args[]){ Bike9 obj=new Bike9(); obj.run(); } }//end of class今すぐテストしてください
Output:Compile Time Error
2) Java 最終メソッド
メソッドをfinalとして作成した場合、それをオーバーライドすることはできません。
最終的な方法の例
class Bike{ final void run(){System.out.println('running');} } class Honda extends Bike{ void run(){System.out.println('running safely with 100kmph');} public static void main(String args[]){ Honda honda= new Honda(); honda.run(); } }今すぐテストしてください
Output:Compile Time Error
3) Java 最終クラス
クラスを最終クラスにした場合、それを拡張することはできません。
最終クラスの例
final class Bike{} class Honda1 extends Bike{ void run(){System.out.println('running safely with 100kmph');} public static void main(String args[]){ Honda1 honda= new Honda1(); honda.run(); } }今すぐテストしてください
Output:Compile Time Error
Q) 最終メソッドは継承されますか?
回答) はい、final メソッドは継承されますが、オーバーライドすることはできません。例えば:
class Bike{ final void run(){System.out.println('running...');} } class Honda2 extends Bike{ public static void main(String args[]){ new Honda2().run(); } }今すぐテストしてください
Output:running...
Q) 空白または初期化されていない最終変数とは何ですか?
宣言時に初期化されていない最終変数は、空の最終変数と呼ばれます。
オブジェクト作成時に初期化され、一度初期化すると変更できない変数を作成したい場合に便利です。たとえば、従業員の PAN CARD 番号。
コンストラクター内でのみ初期化できます。
空の最終変数の例
class Student{ int id; String name; final String PAN_CARD_NUMBER; ... }
質問)最終変数を空白に初期化することはできますか?
はい、ただしコンストラクター内のみです。例えば:
class Bike10{ final int speedlimit;//blank final variable Bike10(){ speedlimit=70; System.out.println(speedlimit); } public static void main(String args[]){ new Bike10(); } }今すぐテストしてください
Output: 70
静的な空の最終変数
宣言時に初期化されていない静的最終変数は、静的空最終変数と呼ばれます。静的ブロック内でのみ初期化できます。
C++で文字列を分割する
静的な空の最終変数の例
class A{ static final int data;//static blank final variable static{ data=50;} public static void main(String args[]){ System.out.println(A.data); } }
Q) 最終パラメータとは何ですか?
パラメータをfinalとして宣言した場合、その値を変更することはできません。
class Bike11{ int cube(final int n){ n=n+2;//can't be changed as n is final n*n*n; } public static void main(String args[]){ Bike11 b=new Bike11(); b.cube(5); } }今すぐテストしてください
Output: Compile Time Error
Q) コンストラクターをfinalと宣言できますか?
いいえ、コンストラクターは決して継承されないためです。