新聞中心
好程序員Java教程分享Java面向?qū)ο笈c面向過(guò)程,面向?qū)ο? 是一種看待問(wèn)題, 解決問(wèn)題的思維方式, 著眼點(diǎn)在于找到一個(gè)能夠幫助解決問(wèn)題的實(shí)體, 然后委托這個(gè)實(shí)體來(lái)解決問(wèn)題
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、成都微信小程序、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了愛(ài)輝免費(fèi)建站歡迎大家使用!
面向過(guò)程: 是一種看待問(wèn)題, 解決問(wèn)題的思維方式, 著眼點(diǎn)在于問(wèn)題是怎樣一步步的解決的, 然后親力親為的去解決這個(gè)問(wèn)題
Java是一種面向?qū)ο蟮恼Z(yǔ)言:
? 用Java這門語(yǔ)言, 可以很容易的寫出具有面向?qū)ο笏季S方式的代碼
用面向?qū)ο蟮木幊陶Z(yǔ)言寫出的代碼, 一定是面向?qū)ο蟮拇a? 錯(cuò)!
大象裝冰箱:
面向過(guò)程:
- 打開(kāi)冰箱門 我
- 把大象裝進(jìn)去 我
- 關(guān)上冰箱門 我
面向?qū)ο?
- 打開(kāi)冰箱門 冰箱
- 把大象裝進(jìn)去 大象
- 關(guān)上冰箱門 冰箱
小明要去組裝一臺(tái)電腦:
面向過(guò)程:
- 補(bǔ)充電腦相關(guān)知識(shí) 小明
- 去市場(chǎng)買零配件 小明
- 將零配件運(yùn)回家中 小明
- 組裝 小明
面向?qū)ο?
- 找到一個(gè)懂電腦的朋友(老王) 小明
- 去市場(chǎng)買零配件 老王
- 將零配件運(yùn)回家中 快遞
- 組裝 老王
類和對(duì)象
對(duì)象: 能夠幫助解決問(wèn)題的那個(gè)實(shí)體
類: 若干個(gè)具有相同的特征和行為的對(duì)象的集合
類和對(duì)象的關(guān)系: 類是對(duì)象的集合, 對(duì)象是類的個(gè)體
張三, 李四, 王五, 趙六, 人類
哈士奇, 泰迪, 金毛, 阿拉斯加, 拉布拉多, 薩摩耶... 狗類
快遞: 順豐, 各種通, 各種達(dá),
超級(jí)英雄(Super Hero): Caption American, Iron man, Spider man, Doctor Strange, Ant
1.6.2 類的設(shè)計(jì)
類的語(yǔ)法:
class 類名 {
// 類體
// 類是若干個(gè)具有相同的特征和行為的對(duì)象的集合
// 在類體中, 定義了這些相同的特征和行為
// 特征: 表現(xiàn)出的是屬性(就是一個(gè)全局變量)
// 行為: 表現(xiàn)出的是方法(不要加static)
// 屬性, 是有默認(rèn)值的
// 整型: 0
// 浮點(diǎn)型: 0.0
// 布爾型: false
// 字符型: '\0' '\u000'
// 引用數(shù)據(jù)類型: null
String name;
int age;
void eat() {}
void sleep() {}
void coding() {}
}
注意事項(xiàng):
- 類名是一個(gè)標(biāo)識(shí)符, 遵循大駝峰命名法
- 一個(gè)java文件中可以寫多個(gè)類, 但是只有和文件名相同的那個(gè)類名可以修飾為public
- 在程序編譯的時(shí)候, 每一個(gè)類都會(huì)生成一個(gè).class字節(jié)碼文件, 而且.class文件的名字和類名相同
注意:
在程序中, 是先有類, 然后再?gòu)倪@個(gè)類中實(shí)例化一個(gè)對(duì)象
1.6.3 對(duì)象的實(shí)例化
1.6.4 對(duì)象的內(nèi)存分析
1.6.5 類中的成員的訪問(wèn)
static:
用關(guān)鍵字static修飾的成員, 叫做靜態(tài)成員
沒(méi)有用關(guān)鍵字static修飾的成員, 叫做非靜態(tài)成員
靜態(tài)成員:
- 靜態(tài)成員是屬于類的, 在訪問(wèn)的時(shí)候, 需要用類來(lái)訪問(wèn)
- 靜態(tài)成員開(kāi)辟空間, 是在這個(gè)類第一次被加載到內(nèi)存中的時(shí)候開(kāi)辟的
非靜態(tài)成員:
- 非靜態(tài)成員是屬于對(duì)象的, 在訪問(wèn)的時(shí)候, 需要用對(duì)象來(lái)訪問(wèn)
非靜態(tài)成員開(kāi)辟空間, 是在這個(gè)對(duì)象被實(shí)例化的時(shí)候開(kāi)辟的
- 靜態(tài)方法中, 不能直接訪問(wèn)非靜態(tài)成員
- 在非靜態(tài)的方法中, 可以直接訪問(wèn)靜態(tài)的成員
class Person {
String name;
static int a;
void eat() {}
static void sleep() {}
}
class Program {
public static void main(String[] args) {
Person xiaoming = new Person();
// 訪問(wèn)非靜態(tài)成員
xiaoming.name = "xiaoming";
xiaoming.eat();
// 訪問(wèn)靜態(tài)成員
Person.a = 10;
Person.sleep();
// 注:
// 訪問(wèn)靜態(tài)的成員, 也可以使用對(duì)象來(lái)訪問(wèn), 但是會(huì)有警告
// 推薦使用類來(lái)訪問(wèn)靜態(tài)成員
}
}
1.6.6 類是一種自定義的類型
1.6.7 this關(guān)鍵字
this: 在程序中,代表對(duì)當(dāng)前對(duì)象的引用。
當(dāng)前對(duì)象:
? this關(guān)鍵字是需要用在某一個(gè)非靜態(tài)方法中。
? 非靜態(tài)方法需要用對(duì)象來(lái)訪問(wèn),哪個(gè)對(duì)象調(diào)用了這個(gè)方法,this就是誰(shuí)
this關(guān)鍵字可以被省略:
在類中訪問(wèn)當(dāng)前的非靜態(tài)的成員,可以省略掉this
但是有一種情況不能省略:
public class Person { String name; int age; char gender; void setInfo(String name, int age, char gender) { // 就近原則 this.name = name; this.age = age; this.gender = gender; } }
本文名稱:好程序員Java教程分享Java面向?qū)ο笈c面向過(guò)程
本文URL:http://www.dlmjj.cn/article/ihshci.html