溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Java重載構(gòu)造的示例分析

發(fā)布時(shí)間:2021-09-28 11:12:45 來(lái)源:億速云 閱讀:129 作者:小新 欄目:編程語(yǔ)言

這篇文章主要介紹了Java重載構(gòu)造的示例分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

帶參數(shù)方法

【1】無(wú)參數(shù),無(wú)返回值

void 方法名(){方法體;}

【2】無(wú)參數(shù),有返回值

int 方法名(){方法體;}

【3】有參數(shù),無(wú)返回值

void 方法名(int num){方法體;}

【4】有參數(shù),有返回值

int 方法名(int num){方法體;}

可變參數(shù)與數(shù)組參數(shù)的區(qū)別

【1】可變參數(shù)傳參靈活,,可以無(wú)參,可以多個(gè)參數(shù),可以數(shù)組;

   數(shù)組參數(shù)只能傳遞數(shù)組

【2】可變參數(shù)必須放在最后

   數(shù)組可以放在任意位置

【3】可變參數(shù)只能有一個(gè);

   數(shù)組參數(shù)可以有多個(gè)。

遞歸算法

遞歸:程序調(diào)用自身的算法。

條件:1.調(diào)用方法本身。

    2.出口

嵌套for循環(huán) 和 用遞歸實(shí)現(xiàn) 的比較

棧 主要是用來(lái)存放棧幀的,每執(zhí)行一個(gè)方法就會(huì)出現(xiàn)壓棧操作,所以采用遞歸的時(shí)候產(chǎn)生的棧幀比較多,遞歸就會(huì)影響到內(nèi)存,非常消耗內(nèi)存,而使用for循環(huán)就執(zhí)行了一個(gè)方法,壓入棧幀一次,只存在一個(gè)棧幀,所以比較節(jié)省內(nèi)存。

封裝

封裝定義:隱藏對(duì)象的屬性和實(shí)現(xiàn)細(xì)節(jié),僅對(duì)外提供公共的訪問(wèn)方式。

使用封裝的好處

1、良好的封裝能夠減少耦合。

2、類(lèi)內(nèi)部的結(jié)構(gòu)可以自由修改。

3、可以對(duì)成員進(jìn)行更精確的控制。

4、隱藏信息,實(shí)現(xiàn)細(xì)節(jié)。

public class Husband {    /*   * 對(duì)屬性的封裝   * 一個(gè)人的姓名、性別、年齡、妻子都是這個(gè)人的私有屬性   */  private String name ;  private String sex ;  private int age ;  private Wife wife;    /*   * setter()、getter()是該對(duì)象對(duì)外開(kāi)發(fā)的接口   */  public String getName() {    return name;  }  public void setName(String name) {    this.name = name;  }  public String getSex() {    return sex;  }  public void setSex(String sex) {    this.sex = sex;  }  public int getAge() {    return age;  }  public void setAge(int age) {    this.age = age;  }  public void setWife(Wife wife) {    this.wife = wife;  }}

方法重載

在一個(gè)類(lèi)中,方法名相同,參數(shù)列表(個(gè)數(shù),順序,類(lèi)型)不同。與返回值無(wú)關(guān)。

作用:方便記憶和使用。

重載方法不同的方式

在java中重載方法有三種方式,它們分別是:

通過(guò)改變參數(shù)的數(shù)量  通過(guò)更改數(shù)據(jù)類(lèi)型  通過(guò)改變參數(shù)排列順序

注意:在java中,只通過(guò)更改方法的返回類(lèi)型來(lái)實(shí)現(xiàn)方法重載是不可以的。

構(gòu)造器

系統(tǒng)會(huì)自動(dòng)創(chuàng)建一個(gè)構(gòu)造方法(構(gòu)造器)默認(rèn)構(gòu)造。

如果沒(méi)有顯示的定義構(gòu)造器,那么系統(tǒng)會(huì)自動(dòng)定義一個(gè)構(gòu)造器,叫默認(rèn)構(gòu)造器。

可以顯示定義構(gòu)造器,只要顯示定義了構(gòu)造器,那么系統(tǒng)調(diào)用的是顯示定義的構(gòu)造器

無(wú)參構(gòu)造,只能在創(chuàng)建對(duì)象的時(shí)候才能調(diào)用

注意:1.沒(méi)有任何返回值

    2.名字和類(lèi)名必須一致

作用:初始化對(duì)象。

構(gòu)造器和訪問(wèn)器的區(qū)別

1.構(gòu)造器 創(chuàng)建完對(duì)象,所有的屬性都初始化完成、

 訪問(wèn)器不能。

2.構(gòu)造器 創(chuàng)建對(duì)象的時(shí)候初始化,可以一次給所有屬性初始化

訪問(wèn)器需要在創(chuàng)建對(duì)象后,逐個(gè)調(diào)用賦值

3.創(chuàng)建對(duì)象后,想要修改屬性值那么需要用訪問(wèn)器。

構(gòu)造器和普通方法的區(qū)別

1.構(gòu)造器就是用來(lái)初始化對(duì)象的。

普通方法是為了完成某個(gè)特定的功能

2.構(gòu)造器只能在創(chuàng)建對(duì)象的時(shí)候調(diào)用new

普通方法在使用的時(shí)候可以隨意調(diào)用,不調(diào)用就不執(zhí)行

初始化對(duì)象

1.成員變量默認(rèn)初始化

2.聲明處初始化或構(gòu)造塊初始化

3.構(gòu)造器初始化

構(gòu)造塊

定義:在類(lèi)中

class 類(lèi)名{  {    構(gòu)造塊:    作用:解決構(gòu)造器中的屬性值相同,代碼重用的問(wèn)題。  }}

本類(lèi)構(gòu)造器調(diào)用

this();//

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Java重載構(gòu)造的示例分析”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI