????? 大家好,我是IT修真院北京分院第27期的學(xué)員孫聰聰,一枚正直純潔善良的java程序員.今天給大家分享一下,修真院官網(wǎng)java任務(wù)一,深度思考中的知識(shí)點(diǎn)——面向?qū)ο蟆?/p>
1.背景介紹:面向?qū)ο笳Z言借鑒了20世紀(jì)50年代的人工智能語言LISP,引入了動(dòng)態(tài)綁定的概念和交互式開發(fā)環(huán)境的思想;始于20世紀(jì)60 年代的離散事件模擬語言SIMULA67,引入了類的要領(lǐng)和繼承,成形于20世紀(jì)70年代的Smalltalk。
面向?qū)ο笳Z言的發(fā)展有兩個(gè)方向:一種是純面向?qū)ο笳Z言,如Smalltalk、EIFFEL等;另一種是混合型面向?qū)ο笳Z言,即在過程式語言及其它語言中加入類、繼承等成分,如C++、Objective-c等。
2.知識(shí)剖析:面向?qū)ο笫窍鄬?duì)于面向過程而言的。語言刻畫客觀系統(tǒng)較為自然,便于軟件擴(kuò)充與復(fù)用。有四個(gè)主要特點(diǎn):
(1)識(shí)認(rèn)性,系統(tǒng)中的基本構(gòu)件可識(shí)認(rèn)為一組可識(shí)別的離散對(duì)象;
(2)類別性,系統(tǒng)具有相同數(shù)據(jù)結(jié)構(gòu)與行為的所有對(duì)象可組成一類;
(3)多態(tài)性,對(duì)象具有惟一的靜態(tài)類型和多個(gè)可能的動(dòng)態(tài)類型;
(4)繼承性,在基本層次關(guān)系的不同類中共享數(shù)據(jù)和操作。
3.常見問題:概念理解不透徹
4.解決方案:看我視頻,并多寫代碼。
5.編碼實(shí)戰(zhàn)
public classCircle {
publicCircle() {
}
public static doublegetRadius() {
returnradius;
}
public static voidsetRadius(doubleradius) {
Circle.radius= radius;
}
private static doubleradius;
public static doublearea(doubleradius){
returnMath.PI*radius*radius;
}
}