二.物件導向
1.物件導向思想:
(1)概述:物件導向是相對於面向過程而言的,面向過程強調的是功能,物件導向強調的是將功能封裝進物件,強調具備功能的物件。
(2)思想特點:
a:是符合人們思考習慣的一種思想;b:將複雜的事情簡單化了;c:將程式設計師從執行者變成指揮者;
比如我們要達到某種結果,我就尋找能幫我達到該結果的功能的物件,如我要洗衣服我就買洗衣機,至於怎麼洗我不管。
(3)特徵:
封裝:隱藏物件的屬性和實現細節,僅對外提供公共訪問方式。
繼承:多個類中的存在相同屬性和行為時,將這些內容抽取到單獨乙個類中,那麼多個類就無需再定義這些屬性和行為,只要繼承那個類即可。
多型:乙個物件在程式不同執行時刻代表的多種狀態,父類或者介面的引用指向子類物件。
2.類和物件
類:對現實世界中的某些事物的描述,是抽象的,概念上的定義。
物件:事物具體存在的個體。
3.成員變數和區域性變數的區別(重點)
(1)作用域
成員變數:針對整個類有效。
區域性變數:只在某個範圍內有效。(一般指的是方法,語句體內)
(2)儲存位置
成員變數:隨著物件的建立而存在,隨著物件的消失而消失,儲存在堆記憶體中。
區域性變數:在方法被呼叫,或者語句被執行的時候存在,儲存在棧記憶體中。當方法呼叫完,或者語句結束後,就自動釋放。
(3)初始值
成員變數:有預設初始值。
區域性變數:沒有預設初始值,使用前必須賦值。
4.匿名物件
(1)匿名物件就是沒有名字的物件。是物件的這一種簡寫形式。
(2)應用場景:
a:只呼叫一次類中的方法。b:可以作為實際引數在方法傳遞中的使用。
5.封裝
指隱藏物件的屬性和實現細節,僅對外提供公共的訪問方式;
好處:將變化隔離;方便使用;提高復用性;提高安全性。
6.關鍵字private:封裝在**中的實現
(1)私有的意思,許可權修飾符;(2)用來修飾成員變數和成員函式;(3)用private修飾的成員只有在本類中有效;(4)私有是封裝的一種體現。
7.構造方法
(1)特點:方法名和類名相同;沒有返回型別;沒有返回值;
(2)作用:構建函式用來建立物件的,並對其進行初始化賦值,物件一建立就自動呼叫相對應的建構函式;
(3)構造方法的注意事項:
a:如果乙個自定義沒有構造方法,系統會預設給出乙個無參構造方法。
b:如果乙個自定義類提供了構造方法,那麼,系統將不再給出無參構造方法。這個時候,你可以不使用無參構造方法。如果你想使用,那麼就必須手動給出無參構造方法。
建議:一般情況下,我們的自定義類都要手動給出無參構造方法。
·(4)構造方法和成員方法的區別
a:格式區別
構造方法和類名相同,並且沒有返回型別和返回值;
普通成員方法可以任意起名,必須有返回型別,可以沒有返回值。
b:作用區別
構造方法用於建立物件,並進行初始化值。
普通成員方法是用於完成特定功能的。
c:呼叫區別
構造方法是在建立物件時被呼叫的,乙個物件建立,只呼叫一次相應建構函式。
普通成員方法是由建立好的物件呼叫,可以呼叫多次。
今天有點晚了,還是堅持了,加油~~~~~
java基礎 IO 第3天
l遞迴 方法定義中呼叫方法本身的現象 l直接遞迴 public void methoda l間接遞迴 public void metohdb public void methodc 遞迴注意實現 要有出口,否則就是死遞迴 次數不能太多,否則就記憶體溢位 file 檔案和目錄路徑名的抽象表示形式 l構...
Java實訓第3天(Java語言基礎)
b 案例演示 邏輯運算子的基本用法 注意事項 c 結論 邏輯與 有false則false。邏輯或 有true則true。邏輯異或 相同為false,不同為true。邏輯非 非false則true,非true則false。b 同理 和 的區別?學生自學 c 開發中常用誰?b 案例演示 b 面試題 b ...
Java基礎第9天
字串本身不能改變,但 str 變數中記錄的位址值是可以改變的。構造方法是用來完成 string物件的建立,如下所示,列出常用的構造方法 public string 空構造 public string byte bytes 把位元組陣列轉成字串 public string byte bytes,int...