面向過程:就是分析出解決問題需要那些過程和步驟虹茶,在用函數(shù)實現(xiàn)這些步驟,最后在一步一步的調(diào)用這些步驟伴奥。它是以步驟來劃分問題写烤,性能比較高,容易與硬件相配合拾徙,比如單片機洲炊。但不夠靈活,不太容易維護尼啡。他寫出來的像蛋炒飯
面向?qū)ο螅悍治龀鼋鉀Q問題需要哪些對象暂衡,再寫出這些對象的功能,最后在由對象間的合作與分工來解決問題崖瞭。它是以對象功能來劃分問題狂巢,具有封裝性,繼承性和多態(tài)性书聚。比較靈活唧领,容易維護,代碼可復用雌续,更適合大型開發(fā)斩个,但性能比較低,易擴展驯杜。這個像蓋澆飯
面向?qū)ο蟮乃季S特點:
1.抽仁苌丁(抽取公用的屬性和組織,形成公用模板,封裝成類)
2.對類進行實例化滚局,獲取類的對象
對象:是一組無序的相關(guān)屬性和方法的集合居暖,比如字符串,數(shù)組藤肢,數(shù)值太闺,函數(shù)等,萬物都是對象谤草。(具體的事務)
對象是由:
1.屬性(事物的特征跟束,比如顏色)
2.方法組成(事物的行為,比如發(fā)短信)
類抽取了公共部分丑孩,它是泛指大類
對象是特指的某一個,通過類實例化具體一個對象灭贷。
類必須使用new來實例化對象
例:
class app {
console.log(213213)
}
const temp = new App()
類constructor構(gòu)造函數(shù)
constructor()是構(gòu)造函數(shù)的默認方法温学,用于傳遞參數(shù)和返回實例對象,通過new時生成對象實例時自動調(diào)用該對象甚疟。如果沒有它會自動生成仗岖。
示例:
class star {
constructor(username ) {
this.username = username
}
}
let ldh = new star()
console.log(ldh.username)
vue ts版本
export default class star {
private username: string;
private age:string;
constructor(username:string, age: string) {
this.username = username
this.age = age
}
sayFunction(song: string){
console.log(this.username + song)
return song
}
}
調(diào)用
import star from '@/utils/cs'
let ldh = new star('了的話', '11')
console.log(ldh.sayFunction('3123123'))