<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                在Java中,final關鍵字可以用來修飾類、方法和變量(包括成員變量和局部變量)。下面就從這三個方面來了解一下final關鍵字的基本用法。 ### 1.修飾類 final修飾類時,則該類不能被繼承 ~~~ package com.qunar.bean; public final class Student { } ~~~ ~~~ package com.qunar.bean; // Remove final modifier from Student public class Qunar extends Student{ public static void main(String[] args){ } } ~~~ 在使用final修飾類的時候,要注意謹慎選擇,除非這個類真的在以后不會用來繼承或者出于安全的考慮,盡量不要將類設計為final類。 ### 2.修飾方法 final修飾方法,則該方法不允許被覆蓋(重寫) 使用final方法的原因有兩個:第一個原因是把方法鎖定,以防任何繼承類修改它的含義;第二個原因是效率,在早期的Java實現版本中,會將final方法轉為內嵌調用,但是如果方法過于龐大,可能看不到內嵌調用帶來的任何性能提升。在最近的Java版本中,不需要使用final方法進行這些優化了。 如果只有在想明確禁止該方法在子類中被覆蓋的情況下才將方法設置為final的。 注:類的private方法會隱式地被指定為final方法。 ~~~ package com.qunar.bean; public class Student { private String name; private int age; private String sex; public final void play(){ System.out.println("Student"); } } ~~~ ~~~ package com.qunar.bean; public class Qunar extends Student{ // Remove final modifier from Student.play public void play(){ System.out.println("Qunar"); } public static void main(String[] args){ Qunar qunar = new Qunar(); qunar.play(); } } ~~~ ### 3.修飾屬性 final修飾屬性則該類的屬性不會隱式的初始化(類的初始化屬性必須有值)或在構造方法中賦值(但只能選其一) ~~~ package com.qunar.bean; public class Student { private String name; // 報錯 final filed age may not hava been initialized // final private int age; final private int age = 10; private String sex; public final void play(){ // final filed Student.age cannot been assigned // age = 30; System.out.println("Student"); } } ~~~ ### 4.修飾變量 final修飾變量則該變量的值只能賦一次值,即變為常量
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看