日本精品aⅴ一区二区三区|国产欧美一二三区|国产乱码精品精|国产精品电影在线免费

      1. <blockquote id="utafg"><th id="utafg"></th></blockquote>
    1. <div id="utafg"></div>
        <blockquote id="utafg"><th id="utafg"></th></blockquote>

        <menuitem id="utafg"></menuitem>
      1. 您現(xiàn)在的位置是:首頁 >綜合 > 2024-03-21 22:06:25 來源:

        java多態(tài)包括(java多態(tài)的概念)

        導(dǎo)讀 大家好,我是小夏,我來為大家解答以上問題。java多態(tài)包括,java多態(tài)的概念很多人還不知道,現(xiàn)在讓我們一起來看看吧!class Wine {public...

        大家好,我是小夏,我來為大家解答以上問題。java多態(tài)包括,java多態(tài)的概念很多人還不知道,現(xiàn)在讓我們一起來看看吧!

        class Wine {

        public void fun1(){

        System.out.println("Wine 的Fun.....");

        fun2();

        }

        public void fun2(){

        System.out.println("Wine 的Fun2...");

        }

        }

        class JNC extends Wine{

        /**

        * @desc 子類重載父類方法

        * ? ? ? ?父類中不存在該方法,向上轉(zhuǎn)型后,父類是不62616964757a686964616fe58685e5aeb931333365633839能引用該方法的

        * @param a

        * @return void

        */

        public void fun1(String a){

        System.out.println("JNC 的 Fun1...");

        fun2();

        }

        /**

        * 子類重寫父類方法

        * 指向子類的父類引用調(diào)用fun2時(shí),必定是調(diào)用該方法

        */

        public void fun2(){

        System.out.println("JNC 的Fun2...");

        }

        }

        public class test24 {

        public static void main(String[] args) {

        Wine a = new JNC();

        a.fun1();

        }

        }

        分析:在這個(gè)程序中子類JNC重載了父類Wine的方法fun1(),重寫fun2(),而且重載后的fun1(String a)與 fun1()不是同一個(gè)方法,由于父類中沒有該方法,向上轉(zhuǎn)型后會(huì)丟失該方法,所以執(zhí)行JNC的Wine類型引用是不能引用fun1(String a)方法。而子類JNC重寫了fun2() ,那么指向JNC的Wine引用會(huì)調(diào)用JNC中fun2()方法。

        所以對(duì)于多態(tài)我們可以總結(jié)如下:

        指向子類的父類引用由于向上轉(zhuǎn)型了,它只能訪問父類中擁有的方法和屬性,而對(duì)于子類中存在而父類中不存在的方法,該引用是不能使用的,盡管是重載該方法。若子類重寫了父類中的某些方法,在調(diào)用該些方法的時(shí)候,必定是使用子類中定義的這些方法(動(dòng)態(tài)連接、動(dòng)態(tài)調(diào)用)。

        本文到此講解完畢了,希望對(duì)大家有幫助。