|
finalとは:SJC-P(310-035)対策Java用語集
Java認定資格(SJC-P/310-035)を一発合格したい! このサイトは、そんなあなたを本気で応援します!! SJC-P(310-035)対策のメルマガ問題集も好評発刊中。 ぜひあなたの受験に役立ててください。 メールマガジンの購読はもちろん無料です! 登録はこちらから→SJC-P対策メルマガ問題集 |
Java用語集:finalfinalについて:簡単に説明するとfinalとは、 修飾子 の一つでありJavaの キーワード の一つです。 finalについて:もっと詳しく
この修飾子 final は、
クラス
・
メソッド
・
変数
の3つに適用されます。
いずれの場合も規則を無視するとコンパイルエラーとなります。 class Test{ public static void main( String args[] ){ Super sp = new Super(); Sub sb = new Sub(); sp.printTest(); sb.printTest(); } } final class Super{ public void printTest(){ System.out.println( "test" ); } } class Sub extends Super{ }
クラス Sub は クラス Super を
継承
しようとしています。 >javac Test.java Test.java:13: final Super からは継承できません。 class Sub extends Super{ ^ エラー 1 個
このように、final で宣言されているクラスは継承できません。 >javac Test.java >java Test test test
続いてメソッドを final 宣言する場合を見てみましょう。 class Test{ public static void main( String args[] ){ Super sp = new Super(); Sub sb = new Sub(); sp.printTest(); sb.printTest(); } } class Super{ public final void printTest(){ System.out.println( "test" ); } } class Sub extends Super{ } >javac Test.java >java Test test test
コンパイル、実行ともに問題ありませんね。 class Test{ public static void main( String args[] ){ Super sp = new Super(); Sub sb = new Sub(); sp.printTest(); sb.printTest(); } } class Super{ public final void printTest(){ System.out.println( "test" ); } } class Sub extends Super{ public void printTest(){ System.out.println( "I am Sub!" ); } } >javac Test.java Test.java:14: Sub の printTest() は Super の printTest() をオーバー ライドできません。;オーバーライドされたメソッドは final です。 public void printTest(){ System.out.println( "I am Sub!" ); } ^ エラー 1 個
コンパイルエラーになってしまいますね。
このように final 宣言されたメソッドはオーバーライドするとコンパイルエラーとなります。 class Test{ public static void main( String args[] ){ final int TEISU = 5; TEISU = 99;//2回目の代入 System.out.println( "TEISU = " + TEISU ); } } >javac Test.java Test.java:4: final 変数 TEISU に値を代入することはできません。 TEISU = 99;//2回目の代入 ^ エラー 1 個
4行目で2回目の代入をしているので、コンパイラに怒られました。 class Test{ public static void main( String args[] ){ final int TEISU; TEISU = 99;//1回目の代入 System.out.println( "TEISU = " + TEISU ); } } >javac Test.java >java Test TEISU = 99 以上、final については、クラス・メソッド・変数それぞれの場合で どのように作用するのか、きちんと抑えておきましょう。 |
SJC-P対策問題集
Java認定試験( SJC-P/310-035 )対策のメルマガ問題集も好評発刊中!
もちろん無料です。 SJC-P対策参考書
現在、Java認定試験(SJC-P/310-035)対策の参考書は本当にたくさん出版されてます。 SJC-P対策Java用語集
Java認定試験( SJC-P/310-035 )合格のために必要な Java の用語を集めました。 更新履歴
このサイトの最新情報はここで確認できます。 Javaを始める人へ
これからJavaを始めようとしているあなたへ。 Java認定資格の概要
Java認定資格にはどのようなものがあるのか。 LINK
Javaの勉強に役立つリンク。 このサイトについて
このサイト「1発合格★Java認定試験!」についての説明です。 ちょっとひと息
仕事や試験勉強に疲れたら、ここでちょっと一息つきませんか。 |
これからJavaを始める人へ / Java認定資格の概要
SJC-P対策Java用語集 / SJC-P対策問題集 / SJC-P対策参考書
このサイトについて / ちょっとひと息 / 更新履歴 / LINK
このサイトはどのページにでも直接リンクして頂いて結構です。リンク大歓迎!
このページのトップページのURLはhttp://sjc-p.obx21.com/です。
Java関連情報
Spring / JSF(JavaServer Faces) / Hibernate / Jbuilder / TOMCAT入門 / NetBeans / JUnit / Struts
Strutsリファレンス / ANT / TOMCAT / JavaでWebサービス / JDBC / JBoss / J2EE / iアプリ
EJB / アプレット / JavaとXML / JMF(Java Media Framework) / Java3D / Jakarta Commons / JNI / OracleとJava
EclipseでJava入門 / Java RMI, CORBA / JSP/サーブレット入門・初心者向け / Javaネットワークプログラミング / WebLogic