【JavaSE_07】Java中类和对象-封装特性
一、談?wù)勈裁词敲嫦驅(qū)ο蟮乃季S
| 理解面向?qū)ο?#xff0c;重點是要思考以下的問題 面向過程 vs 面向?qū)ο?/p> ??談?wù)勈裁词敲嫦蜻^程的編程思想? ??為什么有面向過程還要有面向?qū)ο?#xff1f; ??談?wù)勈裁词敲嫦驅(qū)ο蟮木幊趟枷?#xff1f; ??面向?qū)ο蠛兔嫦蜻^程有什么樣的聯(lián)系? 生活角度:面向過程 vs 面向?qū)ο?/p> 你---》做飯(買菜,洗菜,切菜,炒菜,吃,洗碗) 女朋友----》吃飯 女朋友---》面向?qū)ο?--》你--做飯 你----》面向過程(明確具體的每個步驟) 總結(jié): 生活角度: 面向?qū)ο?#xff1a;(先確定好一類事物,然后再找具體的對象)用人,關(guān)注點在于怎么協(xié)調(diào)每個人來完成工作 面向過程:要明確人去干活的細(xì)節(jié),關(guān)注點在于做每件事的過程 每件事都是自己來干--執(zhí)行者 每件事都是找專業(yè)的人來干--管理者(資源的調(diào)配者) 代碼角度: |
二、Java中的面向?qū)ο?類和對象)
| Java是一門純面向?qū)ο蟮恼Z言,那么它是怎么來實現(xiàn)這些面向?qū)ο蟮乃季S的,那下面我們就要來學(xué)習(xí)它的語法。 掌握面向?qū)ο蟮幕菊Z法:Java最基本的單位是類 在Java中有兩個重要的概念,類和對象。 先抽象(老師)后具體(具體的老師) 類: 生活中:多個個體---》提取公共性----》歸類 對象: 對象:個體 案例1:創(chuàng)建一個老師類 語法: public class 類名{ } 一個老師,我們需要關(guān)注什么特性?比如姓名,年齡等等 除了這些基本的特性或叫屬性之外,老師還應(yīng)該有些行為,比較上課的行為。 那么這種行為,在java中就叫方法。 ? 總結(jié): 基本信息--屬性 行為--方法 語法: Public class 類名{ ???數(shù)據(jù)類型 變量名; ???訪問修飾符 返回值類型 方法名(參數(shù)列表){ ???????方法體; ???} } 案例2:創(chuàng)建一個老師對象 類已經(jīng)有了,但是類是抽象的概念,真正可以干活的是具體的對象,怎么具體化? 對象 創(chuàng)建對象的語法是什么? 類名 對象名 = new 類名();//這跟創(chuàng)建數(shù)組類似 對象名.屬性 對象名.方法 練習(xí): 1.編寫一個老師類,關(guān)注其姓名,年齡,擅長領(lǐng)域等信息,同時關(guān)注其上課的能力,在測試類中創(chuàng)建該類的對象,通過對象給屬性賦值及調(diào)用方法 2.編寫一個手機類,關(guān)注其品牌,價格,屏幕大小等信息,同時關(guān)注其打電話的功能,在測試類中創(chuàng)建該類的對象,通過對象給屬性賦值及調(diào)用方法 增加功能: 來一個方法展示其老師的整體信息 來一個方法展示其手機的整體信息 JDK為我們提供了很多的類,方便我們程序的開發(fā) 比如文件的操作,上傳,下載 ---io 比如網(wǎng)絡(luò)的編程,做對聊小程序 --net 等等 有時候,我們還會自己來創(chuàng)建新的類 比如,婚介系統(tǒng),存儲會員的信息 --創(chuàng)建一個新的類來存儲這個信息 會員: 屬性:身高,年齡等等 方法:唱歌,做飯。。。。 類:概念,抽象的 對象:具體的 |
三、封裝及this
| 封裝有兩層含義,對功能的封裝,比如就是我們的方法,方法就代表一個功能的實現(xiàn); 另一層含義,是對數(shù)據(jù)的封裝,比如手機的價格等等 問題: 上述案例都有共同的問題,老師的年齡或手機的價格都可以給其負(fù)數(shù),但應(yīng)該是不合理的,怎么解決這樣的問題? Java為我們提供了一種解決方案(面向?qū)ο蟮娜筇卣髦?#xff1a;封裝) 注意:真正項目開發(fā)時,我們解決此類問題的方案并不是這樣,但是為了更好讓大家理解封裝的特性,我們暫且采用這個方案來解決此類問題。 步驟: 1.屬性私有化 2.對屬性提供get和set方法 新問題: ???名字相同的問題 ???解決方案引入this關(guān)鍵字 this訪問本類的構(gòu)造方法: 小結(jié): l?this訪問本類的成員屬性 l?this訪問本類的成員方法 l?this訪問本類的構(gòu)造方法 ? 補充: 開發(fā)的時候,我們的類的所有屬性一般都會私有化,然后再提供方法給外界調(diào)用 |
四、構(gòu)造方法
| 什么是構(gòu)造方法,當(dāng)我們要創(chuàng)建一個對象的時候就會使用到構(gòu)造方法,可以實現(xiàn)對象的創(chuàng)建及對象信息的初始化工作 構(gòu)造方法的使用及細(xì)節(jié) 1.構(gòu)造方法的語法格式 訪問修飾符 類名(參數(shù)列表){ ????方法體; } 2.默認(rèn)構(gòu)造方法 3.帶參的構(gòu)造方法 4.默認(rèn)特性,系統(tǒng)默認(rèn)會給我們提供一個無參的構(gòu)造方法 練習(xí):采用帶參的構(gòu)造方法來實現(xiàn)對象的創(chuàng)建,并驗證系統(tǒng)提供無參構(gòu)造方法的機制。 |
五、考點:成員變量和局部變量的區(qū)別
| 成員變量和局部變量的區(qū)別?筆試考點 成員變量: 定義在類中,跟成員方法同級別 局部變量: 方法的參數(shù),或者定義在方法內(nèi)的變量 (1),位置不同,導(dǎo)致作用域不同 (2),生命周期不同 (3),內(nèi)存的位置不同(后面講對象內(nèi)存圖時再講) (4),初始值不同,局部變量默認(rèn)不給初始化,需要你自己去初始化,才能使用 (5),奇葩考點,成員變量和局部變量同名的情況,考優(yōu)先級問題 |
總結(jié)
以上是生活随笔為你收集整理的【JavaSE_07】Java中类和对象-封装特性的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Eclipse用法:自动生成get和se
- 下一篇: 【JavaSE_07】Java中类和对象