国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java之構造器

Simon_Zhou / 966人閱讀

摘要:多個構造器的名字相同,但形參列表不同。但一旦使用關鍵字來調用構造器,將會導致系統重新創建一個對象。此時可以通過關鍵字調用相應的構造器。

構造器是創建對象的重要途徑(即使使用工廠模式、反射等方式創建對象,其實質依然是依賴于構造器),因此,Java類必須包含一個或一個以上的構造器。

使用構造器執行初始化

構造器最大的用處就是在創建對象時執行初始化。當創建一個對象時,系統為這個對象的實例變量進行默認初始化,這種默認的初始化把所有基本類型的變量設為0,把所有引用類型的實例變量設為null.

如果程序員沒有為Java類提供任何構造器,則系統會為這個類提供一個無參數的構造器。這個構造器執行體為空,不做任何事情。無論如何,Java類至少包含一個構造器

構造器主要用于被其他方法調用,用以返回該類的實例,因而通常把構造器設置成public訪問權限,從而允許系統中任何位置的類來創建該類的對象。

構造器重載

同一個類里具有多個構造器,多個構造器參數列表不同,即被稱為構造器重載。多個構造器的名字相同,但形參列表不同。系統通過new調用構造器時,系統將根據傳入的實參列表來決定調用哪個構造器。

如果系統中包含了多個構造器,其中一個構造器包含了另一個構造器的執行體,如何做到代碼復用呢?
假設構造器B完全包含了構造器A。如果是兩個方法之間存在這種關系,則可在方法B中調用方法A。但構造器補不能直接被調用,構造器必須使用new關鍵字來調用。但一旦使用new關鍵字來調用構造器,將會導致系統重新創建一個對象。此時可以通過this關鍵字調用相應的構造器。

public class Test {
    public String name;
    public String color;
    public double weight;
    public Test() {}
    public Test(String name, String color) {
        this.name = name;
        this.color = color;
    }
    public Test(String name, String color, double weight) {
        this(name, color);
        this.weight = weight;
    }

    public static void main(String[] args) {
        Test mytest  = new Test("apple", "red", 12.5);
        System.out.println(mytest.name);  //apple
        System.out.println(mytest.color);  //red
        System.out.println(mytest.weight);  //12.5
    }

}

使用this調用另一個重載的構造器只能在構造器中使用,而且必須作為構造器執行體的第一條語句。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/68523.html

相關文章

  • Java面向對象

    摘要:類用于描述客觀世界里某一類對象的共同特征,而對象則是類的具體的存在,程序使用類的構造器來創建該類的對象。也支持面向對象的三大特征封裝繼承和多態。構造器用于對類實例進行初始化操作,構造器支持重載。 Java是面向對象的程序設計語言,Java語言提供了定義類、成員變量、方法等最基本的功能。類可被認為是一種自定義的數據類型,可以使用類來定義變量。類用于描述客觀世界里某一類對象的共同特征,而對...

    kid143 評論0 收藏0
  • 樂字節-Java8新特性方法引用

    摘要:上一篇小樂介紹了新特性函數式接口,大家可以點擊回顧。中引入方法引用新特性用于簡化應用對象方法的調用,方法引用是用來直接訪問類或者實例的已經存在的方法或者構造方法。方法引用是一種更簡潔易懂的表達式。 上一篇小樂介紹了《Java8新特性-函數式接口》,大家可以點擊回顧。這篇文章將接著介紹Java8新特性之方法引用。 Java8 中引入方法引用新特性,用于簡化應用對象方法的調用,?方法引用是...

    Codeing_ls 評論0 收藏0
  • Java造器

    摘要:一構造器構造器的作用是構造并初始化實例對象。在的每個類中,至少要有一個構造器,沒有定義的話,編譯器將自動插入缺省的構造器。一般把構造器設置為訪問權限,設置為是為了阻止其他類創建該類的實例。 一. 構造器 構造器的作用是構造并初始化實例對象。當創建一個對象時,系統為這個對象的屬性進行初始化。 二. 語法 class 類名 { 變量聲明; 類的名稱(參數列表) { ...

    馬龍駒 評論0 收藏0
  • Java編程思想學習錄(連載:初始化與清理)

    摘要:注本文首發于公眾號,可長按或掃描下面的小心心來訂閱關于構造器與初始化無參構造器默認構造器自己未寫編譯器幫忙自動創建的若自行定義了構造器無論參數有否,編譯器便停止默認創建動作類里的對象引用默認初始化為,基本類型初始化為構造器也是類的靜態方法四 showImg(https://segmentfault.com/img/remote/1460000015723687); 注: 本文首發于 ...

    betacat 評論0 收藏0
  • Java動態性(2) - 反射機制(Reflection)

    摘要:的動態性反射機制動態編譯動態執行代碼動態字節碼操作動態語言程序運行時可以改變程序得結構或變量類型典型語言等如下代碼不是動態語言但有一定的動態性我們可以利用反射機制字節碼操作獲得類似動態語言的特性的動態性讓編程的時候更加靈活反射機制反射機制指 1.Java的動態性 反射機制 動態編譯 動態執行JavaScript代碼 動態字節碼操作 2.動態語言 程序運行時,可以改變程序得結構或變量...

    妤鋒シ 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<