亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        詳析 java中的構(gòu)造函數(shù)與this關(guān)鍵字

        2018-01-15 21:25:17劉志雄
        世紀(jì)之星·交流版 2017年8期
        關(guān)鍵詞:構(gòu)造函數(shù)對(duì)象

        劉志雄

        [摘 要]java中的構(gòu)造函數(shù)與this在程序當(dāng)中起著非常重要的作用:構(gòu)造函數(shù)主要用來(lái)完成對(duì)對(duì)象屬性的初始化工作;this的作用類似于C語(yǔ)言里的指針。本文將結(jié)合簡(jiǎn)單實(shí)例對(duì)構(gòu)造函數(shù)與this的一般用法與特殊用法進(jìn)行詳細(xì)分析。

        [關(guān)鍵詞]構(gòu)造函數(shù);java;對(duì)象;this

        在一個(gè)類中,如果定義了與成員變量同名的形式參數(shù),要區(qū)分到底是成員變量還是形式參數(shù),通過(guò)this來(lái)進(jìn)行區(qū)分。在Java的學(xué)習(xí)當(dāng)中,this關(guān)鍵字起著指針的作用,用來(lái)指示成員變量與成員方法還有構(gòu)造函數(shù)。在已有的文獻(xiàn)當(dāng)中分析構(gòu)造函數(shù)與this的用法時(shí),用例和分析過(guò)于復(fù)雜,下面用簡(jiǎn)單實(shí)例來(lái)全面分析構(gòu)造函數(shù)與this的用法。

        一、構(gòu)造函數(shù)與this用法實(shí)例

        用例如下:

        class student{

        1.int age;

        2.String name;

        3.student(){

        // 5.1 student(age);

        4.System.out.println("空構(gòu)造函數(shù)");}

        5.student(int age){

        6.this();

        7.this.age=age;

        8.System.out.println("帶一個(gè)形參的構(gòu)造函數(shù)"); }

        9.student(int age, String name){

        10. this(age);

        11. this.age=age;

        12. this.name=name;

        13. this.f();

        14. System.out.println("帶兩個(gè)形參的構(gòu)造函數(shù)"); }

        15. void f(){

        16. //this();

        17. System.out.println("成員方法"); }

        18.public static void main(String[] args){

        19. student a1=new student();

        20. student a2=new student(20,"小軍");

        21. System.out.println("年齡"+a2.age+"名字"+a2.name);}}

        程序運(yùn)行結(jié)果如下:

        二、構(gòu)造函數(shù)與this一般用法的分析

        第3行.5行.9 行是定義student類的構(gòu)造函數(shù),第6行.10行是用this來(lái)調(diào)用構(gòu)造函數(shù);另外,構(gòu)造函數(shù)不能相互調(diào)用:如第5.1行與第6行。第7行.11行.12行是this用來(lái)指示成員變量,使用this.age, this.name來(lái)指示成員變量。第13行表示在構(gòu)造函數(shù)中調(diào)用了成員方法f()。第19行與第20行是創(chuàng)建了兩個(gè)對(duì)象,實(shí)際是運(yùn)行了空構(gòu)造函數(shù)與帶兩個(gè)形參的構(gòu)造函數(shù)。如果程序中保留第19行與第20行時(shí),必須把空構(gòu)造函數(shù)寫(xiě)出來(lái)。程序的第21行是對(duì)對(duì)象a2的屬性值的輸出。

        三、this 的特殊用法

        接下來(lái)分析this在匿名類和內(nèi)部類中的應(yīng)用。

        用例如下:

        1.public class animal {

        2.animal(){

        3.Thread thread = new Thread(){

        4.public void run() {

        5.animal.this.run(); } }; //注意這里有分號(hào)

        6.thread.start(); }

        7.public void run() {

        9.System.out.println("我是成員方法run ");}

        10. public static void main(String[] args) {

        11. animal as=new animal();}}

        程序運(yùn)行結(jié)果:

        在上述實(shí)例中,thread是一個(gè)匿名類對(duì)象,run函數(shù)體內(nèi)調(diào)用到了外部類animal的run函數(shù)。由于函數(shù)同名,不可直接調(diào)用:一是把外部類的run函數(shù)換一個(gè)名字如outrun,代碼第5行改成animal.outrun(); 第7行public void run()改成public static void outrun()但這種方法不建議使用。二是用上面例子中的辦法,用外部類的類名加上this引用來(lái)說(shuō)明要調(diào)用的是外部類的方法run。

        四、結(jié)語(yǔ)

        構(gòu)造函數(shù):

        1.構(gòu)造函數(shù)的定義:方法名與類名相同且沒(méi)有返回值。

        2.構(gòu)造函數(shù)的作用是對(duì)象屬性的初始化,如程序中的第20行,依據(jù)參數(shù)傳遞分析知,20是對(duì)age的賦值,“小軍”是對(duì)name的賦值。

        3.空構(gòu)造函數(shù)可隨類的加載自動(dòng)調(diào)用,但創(chuàng)建對(duì)象時(shí),空構(gòu)造函數(shù)與帶參數(shù)的構(gòu)造函數(shù)都用上了,這時(shí)空構(gòu)造函數(shù)就必須顯性的寫(xiě)出來(lái)即程序代碼中的第3行。

        this的用法:

        1.this.變量名:用來(lái)指示成員變量,即代碼中的第7行.1行1.12行,如this.age=age,等號(hào)后面的age構(gòu)造函數(shù)中括號(hào)里的age, this.age中的age是指的成員變量。

        2.this.方法名():用來(lái)指示成員方法,如代碼中的this.f(),指的f()方法是成員方法。

        3.this():這種格式的代碼是用來(lái)指調(diào)用構(gòu)造函數(shù),如果括號(hào)里帶了參數(shù),指的是調(diào)用帶參數(shù)的構(gòu)造函數(shù),如代碼this(age),指的是調(diào)用帶age參數(shù)的構(gòu)造函數(shù)。

        參考文獻(xiàn):

        [1]唐明虎.基于項(xiàng)目任務(wù)驅(qū)動(dòng)的Java語(yǔ)言教學(xué)模式研究[J].智能計(jì)算機(jī)與應(yīng)用,2010,01.

        [2] 安博教育集團(tuán),Java核心技術(shù)[M].北京:電子工業(yè)出版社,2012.

        基金項(xiàng)目:湖南省教育科學(xué)“十三五”規(guī)劃2017年度課題:XJK17BGD083 。endprint

        猜你喜歡
        構(gòu)造函數(shù)對(duì)象
        神秘來(lái)電
        睿士(2023年2期)2023-03-02 02:01:09
        攻略對(duì)象的心思好難猜
        意林(2018年3期)2018-03-02 15:17:24
        一道試題的解法分析與方法應(yīng)用
        考試周刊(2017年38期)2017-12-28 19:32:38
        例談洛必達(dá)法則在高考數(shù)學(xué)壓軸題的應(yīng)用
        基于熵的快速掃描法的FNEA初始對(duì)象的生成方法
        區(qū)間對(duì)象族的可鎮(zhèn)定性分析
        中文亚洲av片不卡在线观看| 九一成人AV无码一区二区三区| AV无码系列一区二区三区| 永久免费看黄在线观看| 国产免费在线观看不卡| 亚州国产av一区二区三区伊在| 蜜桃麻豆www久久囤产精品| 亚洲最新版无码AV| 中文字幕亚洲乱亚洲乱妇| 午夜免费观看一区二区三区| 国产激情久久久久影院小草| 又爽又黄又无遮挡的视频| 少妇性俱乐部纵欲狂欢少妇| 亚洲av无码国产精品久久| 国产福利精品一区二区| 一群黑人大战亚裔女在线播放| 久久国产精品超级碰碰热| 日韩精品午夜视频在线| 国产成人av一区二区三区不卡| 亚洲av不卡一区二区三区| 无码毛片aaa在线| 国产91精品丝袜美腿在线| 国产一区二区三区的区| 国产亚洲精品美女久久久m | 国产成人涩涩涩视频在线观看| 国产av日韩a∨亚洲av电影| 女人一级特黄大片国产精品 | 亚色中文字幕| 亚洲综合新区一区二区| 日本av在线一区二区| 人人妻人人爽人人澡欧美一区| 精品乱码卡1卡2卡3免费开放| 亚洲av毛片成人精品| 在线国人免费视频播放| 亚洲第一最快av网站| 亚洲av无码成人黄网站在线观看| 高跟丝袜一区二区三区| 国产亚洲中文字幕一区| 东京热人妻系列无码专区| 性欧美大战久久久久久久久| av无码天一区二区一三区|