講完了物件導向思想,我們需要用大量的**來去真正的理解它
希望各位看我部落格的初學者:先試著自己寫。熬一陣子,再看**。跟著**去寫
題目一、模擬實現乙個計算器:
//做任何的**設計不要馬上投入編寫
//先思考思考,寫完後一點點慢慢改進,這樣訓練之下你的**慢慢的,寫出來無論**規範還是耦合性都是盡可能最優良的
//乙個計算機不能是算完一次後你就得重啟,所以你的
//首先我們先設定4大加減乘除方法
public
class
computer
public
float
sub(
float a,
float b)
public
float
mut(
float a,
float b)
public
float
chu(
float a,
float b)
//可以一直計算 //程式執行完了就over//通過某種途徑讓程式一直執行---》死迴圈
//期間通過讀取到某些特地的字元讓**停止
//死迴圈
public
void
computlar()
switch
(sym)
system.out.
println
(a);
}// 我們使用者有乙個需求:需要一直處理得到的結果
}}
題目二:多型的理解(策略模式初識):
//多型真的很重要很重要很重要,他讓一組**變得非常靈活,一定程度上讓他能執行的所有型別物件。它也是封裝框架工具中肯定是最常用的思想
//了解多型之前你要清楚的了解繼承思想以及方法重寫
//下面我通過多型模擬各類人去商店的行為。
//記住多型的最大特性父類的引用指向子類物件,能呼叫父類屬性方法,以及子類重寫的方法。
public
abstract
class
person
public
class
poorman
extends
person
}public
class
richman
extends
person
}public
class
textmain
}//第一次執行的是poorman的方法
//第二次執行richman
//這裡,其實你執行的是同一方法,但因為放進去的物件不同(也叫做冊羅)導致了輸出不同,這就是策略模式的簡單效果
接下來就是方法間互相呼叫,好好理解,從arraylist封裝開始將其,雖然只涉及乙個類,對初學者來講以及很困難了
public
class
arraybox
public
arraybox
(int num)
//增加元素
public
boolean
add(
int element)
//集群增加
public
boolean
addall
(arraybox box)
size+=resource.length;
//這時候 容量肯定是夠的
//從size 位開始進行遍歷賦值
//呼叫內部的遍歷賦值方法???
return
true;}
//根據index位置刪除元素//為了安全起見刪除元素時候要
public
intremove
(int index)
elementdata[size]=0
; size--
;return reslut;
}//在特定位置set乙個值
public
intset
(int index,
int element)
//檢視元素(根據位置索引進行檢視)
public
intget
(int index)
//刪除
//一種是跟
//box得到所有的值
public
int[
]getall()
//得到某個特定值的位置
public
intindexof
(integer element)
}return-1
;}public
boolean
contains
(int element)
public
intlength()
//------------------------------------
//以下都是內部方法,我不想讓使用者看到
private
boolean
ensuresize
(int index)
return
true;}
private
void
ensurecapcity
(int newsize)
}//分析要擴容多少
private
void
anylisenewcapicaty
(int newsize)
this
.extendcapacity
(newcapacity);}
//擴容
private
void
extendcapacity
(int newcapacity)
//複製
private
void
copyof
(int size,
int[
] newelementdata)
elementdata=newelementdata;
}//toarray資料變成陣列
private
int[
]toarray()
//用來負責返回的方法
private
int[
]copyof
(int
elementdata,
int size)
return newelementdata;
}
public
class
arrayindexoutofbound***ception
extends
runtimeexception
public
arrayindexoutofbound***ception
(string msg)
}//自定義乙個異常
物件導向程式設計的思想(1)
此系列文章主要是為新手學習物件導向程式設計中的架構基礎,每次只有乙個原則,包括名稱 核心思想 例子及總結 名稱 單一職責原則 single responsibility principle srp 核心 系統中的每個物件都只應該有乙個單獨的職責,物件所關注的就是自身職責的完成。換言之 對乙個類而言,...
物件導向程式設計思想
舉個最簡單點的例子來區分 有一天要請客吃飯,怎麼辦?有兩個方法 1 買菜,買調料,買肉,買酒水,然後下廚房動手炒菜 2 去飯店,點個 看出來區別了嗎?方法1是面向過程,方法2是物件導向。物件導向有什麼優勢?首先不需要知道各種菜式是怎麼做的,降低了耦合性。如果突然想換 了,對於方法1可能不太容易,因為...
物件導向程式設計思想
所謂的物件導向,是一種程式設計思想,程式設計思路,的書寫格式,複雜程式的封裝,封裝成其他形式,使用物件導向的方式來封裝程式。物件導向 有封裝好的物件導向的的程式 直接呼叫執行就可以了 功能和作用類似於 封裝好的函式 但是 封裝的語法和思想與函式不同 物件導向的基本思想 基本思路就是,建立乙個物件,給...