Java面向對象三大特征怎么樣輕松理解`?
封裝:
首先,屬性可用來描述同一類事物的特征, 行為可描述一類事物可做的操作,封裝就是要把屬于同一類事物的共性(包括屬性與行為)歸到一個類中,以方便使用.比如人這個東東,可用下面的方式封裝:
人{
年齡(屬性一)
身高(屬性二)
性別(屬性三)
做事(行為之一)
走路(行為之二)
說話(行為之三)
}
繼承:
由于封裝,使得有共同特征的一類事物的所有描述信息都被歸于一類之中,但我們知道,這并不是萬能的,有些事物有共性,但還存在區(qū)別,比如教師,簡單封裝起來如下:
教師{
年齡(屬性一)
身高(屬性二)
性別(屬性三)
做事(行為之一)
走路(行為之二)
說話(行為之三)
教書(行為之四)
}
上面對教師的封裝,與對人的封裝基本上差不多,只是多了一個特征行為:教書,
教師有與人一樣的共性, 但我們不能說人教書,也就是不能把教書封裝到人之中去,教書是教師的特征行為之一. 為了省事地封裝教師(代碼的復用,這只是繼承存在的原因之一), 可以讓教師去繼承人,如:
教師 extends 人{
教書(行為之三)
}
這樣,我們就不用重新定義那些已經被人這一個類所封裝的那些屬性與行為了,而只需要使用繼承的方式,在人的基礎上拓展教師專有的行為,即教書即可把教師描述出來;這樣的結果, 即是教師也同時擁有人之中所封裝的一切屬性與行為, 還擁有自己的特征行為教書.
多態(tài):
多態(tài)的概念發(fā)展出來,是以封裝和繼承為基礎的(其實我覺得抽象也應該算是面向對象的大特征之一,要封裝,抽象是必須的)
簡單的理解一下多態(tài),比如:
人這個類,封裝了很多人類共有的特性,
教師是人的子類,繼承了人的屬性與行為,當然教師有自己的特征行為,比如教書授課;
學生是人的子類,繼承了人的屬性與行為,當然學生有自己的特征行為,比如學習做作業(yè);
現在,當我們需要去描述教師與學生各自的行為的時候, 我們可以分開來說教師在授課, 學生做作業(yè), 但如果我們要站在抽象的角度, 也就是從教師與學生的父類人的角度, 來同時描述他們各自的行為時,我們怎么描述?人在授課?人在做作業(yè)?這是不是怪怪的很不合適?不合適的問題就在于, 對于行為主體,我們使用了抽象層次的東東人,而對于行為本身, 我們卻使用了具體的東東授課與教書. 怎么解決呢? 那就需要解決抽象與具體的矛盾問題.
既然是站在抽象在角度來描述,那我們把行為抽象一下,不就能同時描述了嗎?比如人在做事(教師授課與學生做作業(yè)都可以說成人在做事),這樣就解決了抽象層次與具體層次之間的矛盾.
到了這一步, 我們可以把兩個描述: 教師在做事, 學生在做事 兩者統(tǒng)一為人在做事,
然后, 我們可以在教師的做事行為中去調用教師自己的特征行為授課,
在學生的做事行為中去調用學生自己的特征行為做作業(yè),
所以,當調用人去做事的時候,如果這個人是教師,那他所做的事實際上就是教書,
如果這個人是學生,那他所做的事實際上就是做作業(yè).
也就是說在這里人是多態(tài)的, 在不同的形態(tài)時,特征行為是不一樣的, 這里的人, 同時有兩種形態(tài),一種是教師形態(tài),一種是學生形態(tài),所對應的特征行為分別是授課與做作業(yè).
完成上述的描述過程, 其實就是多態(tài)機制的體現.
多態(tài), 就是站在抽象的層面上去實施一個統(tǒng)一的行為,到個體(具體)的層面上時, 這個統(tǒng)一的行為會因為個體(具體)的形態(tài)特征而實施自己的特征行為.
多態(tài)比起封裝與繼承來說要復雜很多, 上面的描述很簡單, 不用去死摳多態(tài)兩個字,
其實只要明白:
能站在抽象的角度去描述一件事,
而針對這件抽象的事, 對于每個個體(具體)又能找到其自身的行為去執(zhí)行, 這就是多態(tài).
權利和權力的區(qū)別
權利和權力的區(qū)別
權利與權力相依存、相互滲透、相互轉化,既相統(tǒng)一與平衡,同時又以各自的特點相互區(qū)別。
首先,行為主體與行為屬性不同。權力(或職權)與權利之分,主要是從行為主體上加以區(qū)分。權利主體一般是公民與法人和其他社會通緝(國家機關進行民事行為時,也是權利主體)。權力主體則只能是被授予權力的國家機關及其特定的工作人員。按其行為屬性來講,權利行為一般是民事行為與社會政治行為;權力行為則一般是立法行為、行政行為、司法行為等屬于公務的行為,又稱“職權”,是一種公共權力。權利一般體現個人或法人等主體的利益;權力則不體現權力使用者的個人利益,而以國家社會的公益為目的。所以,權利與權力在一定意義上也可以說是私與公的區(qū)別。以權利謀“私”可,以權力謀私則是非法的。
其次,強制性不同。權利和權力都對相對人具有強制性。法律上享有權利的主體可以依法要求相對人為或不為一定的行為,這也是一種強制性,但它與權力的強制性不同。權力具有國家的直接強制力。權利則只是以國家強制力為后盾。當權利不能實現或遭到侵犯時,權利人可以請示國家行使權力予以保護或救濟,但權利人不得自行對相對人施以強制力。如不得因為討債而拘留、毆打債務人。因此,權力的強制性是直接的,權利的強制性則是以權力為中介,是間接的。
再次,法律地位不同。權利可由權利人獨自享有,可以是一種有特定相對人的權利(如債權),也可以是有一般相對人的權利(如財產所有權)。在存在與這相對應的義務人的雙邊關系的條件下,雙方的法律地位是平等的。權利主體對其享有的某些權利還可以轉讓或權力則只存在于與具體相對人的關系中。單獨的主體無法行使其權力,因權力須駐華對方的服從為條件,是管理與服從關系。因此,權力是單向的,自上而下的,雙邊關系是不平等的。權力主體對授予它的權力都不得放棄或轉讓,政府權力對國家也是一種責任(職責)既不得怠用、不用,否則就是失職。
