六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

面向對象編程,我的思想(6)

[摘要]2.3.2重載構造函數:我還是先把概念給你吧,讓你有個認識,隨后我們在進行論述。在JAVA中:1. 函數重載是一個類中聲明了多個同名的方法,但有不同的參數個數和參數類型。2. 函數重構是指在子類中聲明與父類同名的方法,從而覆蓋了父類的方法。重構解決了子類與父類的差異問題。(在討論到繼承時我會詳細說...

2.3.2重載構造函數:我還是先把概念給你吧,讓你有個認識,隨后我們在進行論述。在JAVA中:1. 函數重載是一個類中聲明了多個同名的方法,但有不同的參數個數和參數類型。2. 函數重構是指在子類中聲明與父類同名的方法,從而覆蓋了父類的方法。重構解決了子類與父類的差異問題。(在討論到繼承時我會詳細說明)在C++中:1. 數重載的概念一樣。2. 重構的概念可就不一樣了,C++中功能更為龐大的虛函數。更詳細內容這里就不錯過多介紹了!其實關于重載的概念你并不陌生,在編程中相信你也接觸過。呵呵!讓我們來舉個操作符重載的例子你就會明白了,(JAVA中不支持這個功能)我們定義三個整數變量:int i1=2, i2=3,i3=0;

i3 = i1 + i2;

此時i3=5;加號實現了兩個數相加的運算功能。然而我們現在要定義三個字符串變量:

String str1=”jing”, str2=”wei”,str3=””;

str3 = str1 + str2;此時str3 = “jingwei”;加號實現了兩個字符串相加的運算功能。同樣是加號,既可以把兩個整型的變量加在一起,也可以把兩個字符串類型的變量加在一起。同一個操作符實現了不同的功能------這就是所謂的操作符重載(嘿嘿,我說你一定見過吧:)!不就好像是漢語中的一詞多意一樣!我需要說明一下的是,C++中的操作符重載可沒有這么簡單。比如,我們可以對兩個自定義類型的對象進行相加的運算,進行賦值的運算。這樣書寫簡潔明了,而且非常實用。當然,關于操作符重載的話題太多了,有興趣再看看書吧!我們把操作符的話題在轉到函數上來,我們一直強調的是“對象調方法”------對象其實調的是方法的“名稱”。而我們現在要對方法進想重載,也就是定義多個相同名稱的函數,這樣計算機在調用的時候不會混淆嘛?我想應該不會的,呵呵,因為僅僅是函數名稱相同,而我們在調用函數時會把參數傳遞給他的。既是沒有參數也是一種參數傳遞參數的信息(信息為無參數)!然而由于參數類型、參數數量、返回值類型不同我們就可以對相同名稱的函數進行區分了!目的只有一個,用簡便的方法實現更多的功能。還是舉個例子吧,重載構造函數!
public class employee{

public employee(String n,int a,char s,float e,boolean l){ //看這個構造函數

name = n; //設置員工姓名

age = a; //設置員工年齡

sex = s; //設置員工性別

emolument = e; //設置員工薪水

lunch =l; //設置員工午餐

}

public employee(){ //請注意這個函數沒有參數

name = “jw”;

age = 20;

sex = ’W’;

emolument = 99;

lunch = true

}

//……等等

};
看,在一個類中有兩個名稱相同的函數,可我們在使用的時候系統如何知道我們調用的是那個版本的函數呢?呵呵,我剛剛說過了,可以通過函數的參數類型、參數數量、返回值類型來確定�,F在我們接著試驗,我們創建兩個對象其中的一個調用帶參數的構造函數,第二個對象調用缺省值的構造函數。我們來看看結果:jingwei = new employee("jingwei",20,'M',100,false);/*創建這個對象的時候調用的是帶參數的構造函數*/

flashmagic = new employee();//創建這個對象是調用的是卻省值的構造函數

而得到的結果呢?讓我們一起來看一看!

Jingwei這個對象中: flashmagic這個對象中:name jingwei name jw
age 20 age 20

sex M sex W

emolument 100 emolument 99

lunch false lunch true看,雖然是兩個名稱完全相同的函數,但完成了不同的工作內容。呵呵!關于函數重載我們就料到這里吧,我相信你已經有個大印象了,而更詳細的內容仍需要你的努力!重載普通的函數與重載構造函數大同小異,不過他多了一個this指針!this一般是對當前對象的引用。這么說吧,如果涉及到兩個以上的對象時就會使用this指針。每個成員函數都有一個this指針,它是一個隱藏的參數,this指針只向調用它的對象!我說過方法只有一份,而對象都有自己的屬性,當對象調用方法來先是屬性的時候,他怎么來判斷調用的時不是自己的屬性呢?這就需要this指針來大顯神威了。關于拷貝構造函數、內聯函數、虛函數、模版等歐就不做過多的討論了,因為JAVA中好像沒有這些了。不過我需要提醒你一下的是,在C++中,類內定義的函數自動轉換為內聯函數,而這好像與我前面提到的思想有沖突。因為內聯函數的目的是減少函數調用的開銷!呵呵!我也沒繞出來呢!還請哪為大蝦指點一二!謝!


主站蜘蛛池模板: 亚洲黄色一区 | 在线播放精品一区二区啪视频 | 日韩一区二区三区视频在线观看 | 日本精品一区二区三区四区 | 日本美女久久 | 网站免费观看 | 无毒不卡 | 日本aⅴ在线不卡免费观看 日本aⅴ在线 | 日韩高清第一页 | 香蕉成人福利片视频在线下载 | 日韩毛片免费在线观看 | 天堂a免费视频在线观看 | 午夜成人免费影院 | 日本在线视频网 | 欧美网址在线观看 | 亚洲高清视频在线播放 | 中文字幕在线天堂 | 欧美做真爱欧美观看免费 | 人人澡人人爱 | 亚洲欧美日本在线 | 午夜一区二区三区 | 青青草影院在线观看 | 色噜噜色噜噜天天拍一拍 | 中文字幕在线视频不卡 | 亚洲视频男人的天堂 | 天天骑夜夜操 | 手机看片亚洲 | 手机看片精品高清国产日韩 | 视频一区在线 | 日韩免费在线观看 | 欧美中文在线观看 | 日韩欧美中文字幕在线视频 | 亚洲wwwwww| 偷偷干夜夜拍 | 欧美爽爽网| 中文字幕精品在线视频 | 欧美特黄一级大片 | 四虎精品永久在线网址 | 四虎影视站长工具 | 日本高清视频色www在线观看 | 日韩在线aⅴ免费视频 |