聲明:本文首發(fā)于我的個(gè)人微信公眾號【Java編程社區(qū)】,查看更多文章與學(xué)習(xí)資源請移步我的公眾號Java編程社區(qū)
萬物皆對象
學(xué)習(xí)Java叫潦,我們都聽過這句話:萬物皆對象洋机。那么什么是對象?
我們先來看看人類是怎么認(rèn)識世界的,人類不斷的接觸到世界上的各種生物歧蕉,通過長期的觀察,把具有公共特性的生物進(jìn)行分類康铭,這樣就給每類動(dòng)物一個(gè)統(tǒng)稱惯退,比如牛、馬从藤、老虎等催跪,單獨(dú)從老虎的角度講锁蠕,世界上又有千千萬萬個(gè)老虎,它們都是這個(gè)世界上具體的某一個(gè)生物懊蒸。我們在現(xiàn)實(shí)生活中荣倾,是通過具體的某個(gè)事物歸納總結(jié)他們的公共特性然后產(chǎn)生類。
對象:在現(xiàn)實(shí)生活中存在的具體的一個(gè)事物骑丸。
類:對某種類型事物的公共屬性與行為的抽取舌仍。
人類認(rèn)識世界:對象——>類
在Java中: 類——>對象
Java中描述事物通過類的形式體現(xiàn),類是具體事物的抽象通危,概念上的定義铸豁。
對象既是該類事物實(shí)實(shí)在在存在的個(gè)體。
類與對象的關(guān)系圖
類就是汽車
汽車A菊碟、B节芥、C就是堆內(nèi)存中的對象。
面向?qū)ο笈c面向過程對比
舉個(gè)生活中買電腦的例子
面向過程就是分析出解決問題所需要的步驟逆害,然后用函數(shù)把這些步驟一步一步實(shí)現(xiàn)头镊,使用的時(shí)候一個(gè)一個(gè)依次調(diào)用就可以了。
面向?qū)ο笫前褬?gòu)成問題事務(wù)分解成各個(gè)對象忍燥,建立對象的目的不是為了完成一個(gè)步驟拧晕,而是為了描敘某個(gè)事物在整個(gè)解決問題的步驟中的行為隙姿。
面向?qū)ο蟮奶卣?/strong>
封裝
繼承
多態(tài)
開發(fā)的過程:其實(shí)就是不斷的創(chuàng)建對象梅垄,使用對象,指揮對象做事情输玷。
設(shè)計(jì)的過程:其實(shí)就是在管理和維護(hù)對象之間的關(guān)系队丝。
關(guān)于面向?qū)ο蟮奶卣鳎诤罄m(xù)的文章中我會詳細(xì)講欲鹏。
使用Java來描述事物
案例:通過Java語言定義一個(gè)汽車類机久,并生產(chǎn)出汽車,有顏色赔嚎、輪胎個(gè)數(shù)膘盖,有運(yùn)行的功能。
分析:
如何描述現(xiàn)實(shí)生活中的事物尤误,描述該事物的屬性和行為侠畔,汽車具有顏色和輪胎數(shù)的屬性,具備運(yùn)行的行為损晤。
如何使用Java語言進(jìn)行轉(zhuǎn)換软棺?
根據(jù)對應(yīng)關(guān)系:
屬性:類中的成員變量
行為:類中的成員函數(shù)
那么定義Java類就是定義一個(gè)類的成員。汽車類具備的成員是顏色尤勋,輪胎數(shù)喘落,運(yùn)行方法茵宪。
public class Car {
String color;//成員變量
int num;//成員變量
//成員函數(shù)
void run(){
System.out.println(color + "的車瘦棋,輪胎數(shù): " + num + "個(gè),跑起來了");
}
}
對象的創(chuàng)建
創(chuàng)建Car對象
public class CarDemo {
public static void main(String[] args) {
//java中創(chuàng)建對象赌朋,使用new關(guān)鍵字在堆內(nèi)存中開辟了空間,產(chǎn)生了一個(gè)實(shí)體箕慧。
//為了方便使用生產(chǎn)的汽車服球,就起了一個(gè)名字car
//car是Car類型,叫做類變量
Car car = new Car();
//使用對象的功能
car.run();
}
}
對象成員的調(diào)用
public class CarDemo {
public static void main(String[] args) {
Car car = new Car();
//對象名.成員變量名將返回成員變量中存儲的數(shù)值
int num = car.num;
System.out.println(num);
//對象名.成員變量名也可以給成員變量賦值
car.num = 4;
car.color = "black";
//對象名.成員方法
car.run();
}
}
今天就分享到這颠焦,后續(xù)會繼續(xù)分享,敬請期待伐庭!
聲明:本文首發(fā)于我的個(gè)人微信公眾號【Java編程社區(qū)】,查看更多文章與學(xué)習(xí)資源請移步我的公眾號Java編程社區(qū)