您好,登錄后才能下訂單哦!
這篇文章主要介紹了Java重載構(gòu)造的示例分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
【1】無(wú)參數(shù),無(wú)返回值
void 方法名(){方法體;}
【2】無(wú)參數(shù),有返回值
int 方法名(){方法體;}
【3】有參數(shù),無(wú)返回值
void 方法名(int num){方法體;}
【4】有參數(shù),有返回值
int 方法名(int num){方法體;}
【1】可變參數(shù)傳參靈活,,可以無(wú)參,可以多個(gè)參數(shù),可以數(shù)組;
數(shù)組參數(shù)只能傳遞數(shù)組
【2】可變參數(shù)必須放在最后
數(shù)組可以放在任意位置
【3】可變參數(shù)只能有一個(gè);
數(shù)組參數(shù)可以有多個(gè)。
遞歸:程序調(diào)用自身的算法。
條件:1.調(diào)用方法本身。
2.出口
棧 主要是用來(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)方法重載是不可以的。
系統(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ì)象。
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)器。
1.構(gòu)造器就是用來(lái)初始化對(duì)象的。
普通方法是為了完成某個(gè)特定的功能
2.構(gòu)造器只能在創(chuàng)建對(duì)象的時(shí)候調(diào)用new
普通方法在使用的時(shí)候可以隨意調(diào)用,不調(diào)用就不執(zhí)行
1.成員變量默認(rèn)初始化
2.聲明處初始化或構(gòu)造塊初始化
3.構(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í)!
免責(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)容。