JAVA入門(mén)小小白學(xué)習(xí)中ing(面向?qū)ο螅?lèi)和對(duì)象播聪,java中定義類(lèi)的格式朽基,類(lèi)的對(duì)象))

小豬學(xué)習(xí)

小小白慢慢學(xué)習(xí)中ing 第十天

努力努力


本日內(nèi)容(面向?qū)ο蟪踝R(shí))

1、生活中什么是面向?qū)ο?br>

洗衣服离陶,吃飯

面向過(guò)程:關(guān)注點(diǎn)是過(guò)程 ————站在一個(gè)執(zhí)行者的角度去考慮事情稼虎,做事情

????//step1.找個(gè)盆

????//step2.收集要洗的衣服

????//step3.放水,放洗衣粉招刨。渡蜻。

????//step4:洗一洗

????//step5:曬一曬

?

面向?qū)ο螅宏P(guān)注點(diǎn)是對(duì)象 ————站在指揮者的角度

????//step1:找個(gè)對(duì)象

????//step2:讓他洗衣服

生活中的面向?qū)ο螅赫液线m的人,做合適的事兒计济。。

生活中的面向過(guò)程:親力親為排苍,按照流程步驟來(lái)沦寂,一步一步,吭哧吭哧淘衙。传藏。。

?

代碼中:

????Arrays類(lèi)

????????sort();-->排序

????????binarySearch();-->搜索

????Scanner類(lèi)

????????sc.nextInt();

????????sc.next();

????????sc.nextDouble();

2彤守、面向?qū)ο蠛兔嫦蜻^(guò)程

面向?qū)ο螅?OOP)

????不是一種語(yǔ)言毯侦,而是一種編程思想。

面向?qū)ο蟪绦蛟O(shè)計(jì):(Object Oriented Programming)

????????Object:對(duì)象

????????Oriented:方向具垫,定向

????????Programming:程序

面向過(guò)程:

????????關(guān)注點(diǎn)在過(guò)程上(步驟)

????????step1侈离,step2,step3.筝蚕。卦碾。。起宽。

????????總和分析洲胖,按照步驟實(shí)現(xiàn)即可。

?

面向?qū)ο螅?/p>

????????關(guān)注點(diǎn)在對(duì)象上坯沪,

????????萬(wàn)事萬(wàn)物皆對(duì)象绿映。

????????A:分析當(dāng)前的問(wèn)題域中所涉及的對(duì)象。

????????B:這些對(duì)象有什么樣的特征和功能腐晾。

????????????????外部特征:靜態(tài)屬性

????????????????動(dòng)作行為:動(dòng)態(tài)屬性

????????C:對(duì)象和對(duì)象之間的關(guān)系叉弦。

????????????????繼承關(guān)系,聚合關(guān)系藻糖,關(guān)聯(lián)關(guān)系卸奉。。颖御。

????????????????類(lèi)的堆砌榄棵。

3速址、類(lèi)和對(duì)象

類(lèi) ? ? ? ? ? ? ? | ? ? ? ?? 對(duì)象

人類(lèi):??????????????????? Person鐘南山院士,你拱撵,我篓冲,王二狗,李小花瘪弓,袁隆平爺爺垫蛆,馬云爸爸。腺怯。

狗類(lèi):??????????????????? 幻影袱饭,忠犬八公,二哈呛占,嘯天

貓類(lèi):??????????????????? 嘟嘟虑乖,卡卡,你家的貓晾虑,姥姥家的白貓

汽車(chē)類(lèi): ? ? ? ? ? ? ? ? 我的黑色的長(zhǎng)城車(chē)疹味,58臺(tái)紅旗車(chē),撞我的那臺(tái)車(chē)帜篇。糙捺。

筆記本電腦類(lèi): ? ?? 我現(xiàn)在用的這個(gè)電腦15寸的pro,王二狗的華碩笙隙,你媳婦的聯(lián)想

手機(jī)類(lèi): ? ? ? ? ? ? ? ? 我的華為Mate30洪灯,你的小米mix2s,你媳婦用諾基亞n95

類(lèi):其實(shí)指的就是類(lèi)別竟痰。對(duì)同一類(lèi)事物的統(tǒng)稱(chēng)婴渡。對(duì)這類(lèi)事物進(jìn)行描述,--->創(chuàng)建class

????????就是一個(gè)抽象的概念凯亮。

對(duì)象:

? ? ? ? 類(lèi)中的一個(gè)具體的實(shí)例边臼,客觀存在的,能用假消。個(gè)體柠并。

如何定義一個(gè)類(lèi)?

????????要有能夠描述這一類(lèi)別的外部特征——我們叫做屬性(靜態(tài)屬性)

變量就可以富拗。(名詞)

? ? ? ? 要有能夠描述這一類(lèi)別的行為功能——我們叫做方法(動(dòng)態(tài)屬性)

方法就可以。(動(dòng)詞)

4啃沪、Java中定義類(lèi)的格式

/*

class ClassName{//類(lèi)名首字母大寫(xiě)

//屬性描述:外部特征

//行為描述:能夠干啥

}

*/

要求:

? ?1粘拾、CLassName要求符合駝峰命名法,首字母大寫(xiě)创千,見(jiàn)名知意缰雇。

? ?2入偷、屬性描述:外部特征,用于描述這個(gè)類(lèi)別的一些特征械哟,而這些特征通過(guò)一個(gè)"詞"來(lái)描述清楚疏之,比如姓名,年齡暇咆。使用變量來(lái)表示锋爪。——【成員變量】Field爸业,詞義"字段"

? ?3其骄、行為描述:能夠干啥,用于描述這個(gè)類(lèi)別的一些行為功能扯旷,而這些行為功能拯爽,是一個(gè)動(dòng)作行為,比如吃飯薄霜,睡覺(jué)。使用方法來(lái)表示纸兔《韫希——【成員方法】Method,詞義"方法"

? 不要加static汉矿。

方法:就是一段具有獨(dú)立功能的代碼崎坊。

4.1 step1聲明類(lèi)

public class Person{//類(lèi)的名字

}

4.2 step2聲明類(lèi)中的【成員變量】

public class Person {

????????//step2:成員變量

????????String name;//使用String類(lèi)型的變量name,表示人類(lèi)中的姓名

????????int age;//使用int類(lèi)型的變量age洲拇,表示人類(lèi)中的年齡

????????char sex;//使用char類(lèi)型的變量sex奈揍,表示人類(lèi)中的性別

}

4.3 step3聲明類(lèi)中的【成員方法】

public class Person {

????????//step2:成員變量

????????String name;//使用String類(lèi)型的變量name,表示人類(lèi)中的姓名

????????int age;//使用int類(lèi)型的變量age赋续,表示人類(lèi)中的年齡

????????char sex;//使用char類(lèi)型的變量sex男翰,表示人類(lèi)中的性別

????????//step3:成員方法

????????public void eat(){

????????????????System.out.println("吃飯啦。纽乱。");

????????}

????????public void sleep(){

????????????????System.out.println("睡覺(jué)啦蛾绎。。");

????????}

????????public void daDouDou(){

????????????????System.out.println("打豆豆鸦列。租冠。。");

????????}

}

?5薯嗤、類(lèi)的對(duì)象

5.1 創(chuàng)建類(lèi)的對(duì)象

創(chuàng)建對(duì)象顽爹,也叫做類(lèi)的實(shí)例化。對(duì)象骆姐,也叫類(lèi)的實(shí)例镜粤。

/*

new關(guān)鍵字

new捏题,詞義:新的,新建

new 關(guān)鍵字繁仁,專(zhuān)門(mén)用于新建對(duì)象涉馅。

*/

Scanner sc = new Scanner();//Scanner也是個(gè)類(lèi),Person也是個(gè)類(lèi)黄虱。

int[] arr = new int[5];

語(yǔ)法結(jié)構(gòu):

????????/*

????????類(lèi)名 對(duì)象名 = new 類(lèi)名();

????????*/

step1:創(chuàng)建類(lèi)

step2:根據(jù)類(lèi)稚矿,實(shí)例化對(duì)象

5.2通過(guò)對(duì)象訪問(wèn)屬性

/*

int[] arr = new int[5];

獲取數(shù)組的長(zhǎng)度:

arr.length

arr的長(zhǎng)度

*/

對(duì)象訪問(wèn)屬性的語(yǔ)法:就是一個(gè).

//給對(duì)象的屬性,進(jìn)行賦值

p1.name = "王二狗";//給p1這個(gè)對(duì)象的name屬性進(jìn)行賦值

p1.age = 18;

p1.sex = '男';

//獲取對(duì)象的屬性值

System.out.println("姓名:"+p1.name);

System.out.println("年齡:"+p1.age);

System.out.println("性別:"+p1.sex);

5.3通過(guò)對(duì)象訪問(wèn)方法

/*

Scanner sc = new Scanner();

sc.nextInt();

*/

Scanner捻浦,就是一個(gè)class晤揣,一個(gè)類(lèi)

sc,是根據(jù)Scanner創(chuàng)建出來(lái)的一個(gè)對(duì)象

對(duì)象調(diào)用類(lèi)中的方法朱灿,語(yǔ)法昧识,也是.

對(duì)象.方法名();

????????p1.eat();

????????p1.sleep();

????????p1.daDouDou();

方法:public void test1();

對(duì)象.test1();

6、 內(nèi)存分析

實(shí)例代碼:

package com.qf.demo01;

?

public class Test1Person {

????????public static void main(String[] args) {

????????????????//step1:創(chuàng)建Person類(lèi)的對(duì)象

????????????????//語(yǔ)法:類(lèi)名 對(duì)象名 = new 類(lèi)名();

????????????????Person p1 = new Person();

????????????????System.out.println(p1);//打印p1的值盗扒,p1是引用類(lèi)型跪楞,打印都是p1指向的對(duì)象的地址。

????????????????System.out.println(p1.name);

????????????????System.out.println(p1.age);

????????????????System.out.println(p1.sex);

????????????????/*

????????????????* com.qf.demo01.Person@15db9742

????????????????* 包名.類(lèi)名@編碼值 ---->理解為p1的內(nèi)存地址侣灶。

????????????????* java中的數(shù)據(jù)類(lèi)型:

????????????????* 基本類(lèi)型:byte甸祭,short,char褥影,int池户,long,bolean凡怎,float校焦,double

????????????????* 引用類(lèi)型:

????????????????* 數(shù)組,類(lèi)類(lèi)類(lèi)型

????????????????*/

????????????????//step2:通過(guò)對(duì)象訪問(wèn)屬性统倒,語(yǔ)法是.

????????????????//給對(duì)象的屬性寨典,進(jìn)行賦值

????????????????p1.name = "王二狗";//給p1這個(gè)對(duì)象的name屬性進(jìn)行賦值

????????????????p1.age = 18;

????????????????p1.sex = '男';

????????????????//獲取對(duì)象的屬性值

????????????????System.out.println("姓名:"+p1.name);

????????????????System.out.println("年齡:"+p1.age);

????????????????System.out.println("性別:"+p1.sex);

????????????????//step3:通過(guò)對(duì)象,訪問(wèn)成員方法--->理解為就是對(duì)象調(diào)用成員方法

????????????????p1.eat();

????????????????p1.sleep();

????????????????p1.daDouDou();

????????}

}

內(nèi)存分析圖:

示例代碼:

package com.qf.demo01;

?

public class Test2Person {

?????????public static void main(String[] args) {

????????????????//1.創(chuàng)建一個(gè)Person類(lèi)的對(duì)象

? ? ? ? ? ? ? ? Person p1 = new Person();

????????????????System.out.println(p1);//p1的內(nèi)存地址:com.qf.demo01.Person@15db9742

????????????????p1.name = "張三狗";

????????????????p1.age = 19;

????????????????p1.sex = '男';

????????????????System.out.println(p1.name);//張三狗

????????????????System.out.println(p1.age);//19

????????????????System.out.println(p1.sex);//男

????????????????//2.再創(chuàng)建一個(gè)Person類(lèi)的對(duì)象

????????????????Person p2 = new Person();

????????????????System.out.println(p2);//p2的內(nèi)存地址房匆,com.qf.demo01.Person@6d06d69c

????????????????p2.name = "李小花";

????????????????p2.age = 17;

????????????????p2.sex = '女';

????????????????System.out.println(p2.name);//李小花

????????????????System.out.println(p2.age);//17

????????????????System.out.println(p2.sex);//女

????????????????//3.

????????????????Person p3 = null;//僅僅聲明了Person類(lèi)型的對(duì)象p3凝赛,但是實(shí)際上,

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? //并沒(méi)有在堆內(nèi)存中坛缕,創(chuàng)建出 ? 真正的對(duì)象墓猎。

????????????????/*

????????????????* NullPointerException,空指針異常

????????????????*

????????????????* 對(duì)象不存在赚楚,就是個(gè)null毙沾,

?????????????????* 強(qiáng)行的訪問(wèn)對(duì)象的屬性或調(diào)用方法,就會(huì)空指針異常宠页。

????????????????*/

????????????????//System.out.println("---->"+p3.name);//報(bào)錯(cuò)啦:NullPointerException

????????????????p3 = p1;//將p1的值(p1對(duì)象的內(nèi)存地址)左胞,賦值給p3寇仓,

????????????????????????????//結(jié)果-->p1和p3存儲(chǔ)的是同一個(gè)對(duì)象的內(nèi)存地址。

????????????????p3.name = "李鐵柱";

????????????????System.out.println(p1.name);//李鐵柱

????????????????System.out.println(p2.name);//李小花

????????????????System.out.println(p3.name);//李鐵柱

????????????????Person p4 = new Person();

????????????????System.out.println(p4);//?

????????????????p4.name = "王二丫";

????????????????p4.age = 18;

????????????????p4.sex = '女';

????????????????System.out.println(p4.name );

????????????????System.out.println(p4.age);

????????????????System.out.println(p4.sex);

????????????????p4 = p1;//改變對(duì)象的內(nèi)存地址了烤宙,就不再指向原來(lái)的內(nèi)存對(duì)象遍烦。

????????????????System.out.println(p1.name);

????????????????System.out.println(p3.name);

????????????????System.out.println(p4.name);

????????}

}

?

內(nèi)存分析圖:




希望我能堅(jiān)持住每天堅(jiān)持記錄著 ...

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市躺枕,隨后出現(xiàn)的幾起案子服猪,更是在濱河造成了極大的恐慌,老刑警劉巖拐云,帶你破解...
    沈念sama閱讀 211,948評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件罢猪,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡叉瘩,警方通過(guò)查閱死者的電腦和手機(jī)膳帕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)薇缅,“玉大人危彩,你說(shuō)我怎么就攤上這事∮捐耄” “怎么了汤徽?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,490評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)蓬痒。 經(jīng)常有香客問(wèn)我泻骤,道長(zhǎng)漆羔,這世上最難降的妖魔是什么梧奢? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,521評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮演痒,結(jié)果婚禮上亲轨,老公的妹妹穿的比我還像新娘。我一直安慰自己鸟顺,他們只是感情好惦蚊,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著讯嫂,像睡著了一般蹦锋。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上欧芽,一...
    開(kāi)封第一講書(shū)人閱讀 49,842評(píng)論 1 290
  • 那天莉掂,我揣著相機(jī)與錄音,去河邊找鬼千扔。 笑死憎妙,一個(gè)胖子當(dāng)著我的面吹牛库正,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播厘唾,決...
    沈念sama閱讀 38,997評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼褥符,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了抚垃?” 一聲冷哼從身側(cè)響起喷楣,我...
    開(kāi)封第一講書(shū)人閱讀 37,741評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎讯柔,沒(méi)想到半個(gè)月后抡蛙,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,203評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡魂迄,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評(píng)論 2 327
  • 正文 我和宋清朗相戀三年粗截,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片捣炬。...
    茶點(diǎn)故事閱讀 38,673評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡熊昌,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出湿酸,到底是詐尸還是另有隱情婿屹,我是刑警寧澤,帶...
    沈念sama閱讀 34,339評(píng)論 4 330
  • 正文 年R本政府宣布推溃,位于F島的核電站昂利,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏铁坎。R本人自食惡果不足惜蜂奸,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望硬萍。 院中可真熱鬧扩所,春花似錦、人聲如沸朴乖。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,770評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)买羞。三九已至袁勺,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間畜普,已是汗流浹背期丰。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,000評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人咐汞。 一個(gè)月前我還...
    沈念sama閱讀 46,394評(píng)論 2 360
  • 正文 我出身青樓盖呼,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親化撕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子几晤,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容