- 繼承
- 封裝
- 多態
- 迭代
- 缺省
- 透明
- 面向對象
- 同步
- 異步
- 多線程與多任務
- 單工 半雙工 全雙工
- 進程和線程
- 臨界
- 互斥
- 管程
- 臨界區
繼承
繼承可以使得子類具有父類的屬性和方法或者重新定義、追加屬性和方法等。
'''父類'''
class selfintroduce:
def __init__(self):
print('hello!')
'''子類'''
class person(selfintroduce):
def say(self,name):
print(name+':My name is',name)
print('————————————')
python=person()
python.say('Python')
java=person()
java.say('Java')
'''
hello!
Python:My name is Python
————————————
hello!
Java:My name is Java
————————————
'''
封裝
封裝,即隱藏對象的屬性和實現細節,僅對外公開接口,控制在程序中屬性的讀和修改的訪問級別;將抽象得到的數據和行爲(或功能)相結合,形成一個有機的整體,也就是將數據與操作數據的源代碼進行有機的結合,形成“類”,其中數據和函數都是類的成員。
多態
在面嚮對象語言中,接口的多種不同的實現方式即爲多態。引用Charlie Calverts對多態的描述——多態性是允許你將父對象設置成爲一個或更多的他的子對象相等的技術,賦值之後,父對象就可以根據當前賦值給它的子對象的特性以不同的方式運作。多態就是允許方法重名 參數或返回值可以是父類型傳入或返回。
迭代
對計算機特定程序中需要反覆執行的子程序*(一組指令),進行一次重複,即重複執行程序中的循環,直到滿足某條件爲止
缺省
缺省,即系統默認狀態,意思與“默認”相同,常見缺省值。
透明
在計算機領域中,站在某類用戶的角度,若感覺不到某個事物或屬性的存在,即“看”不到某個事物或屬性,則稱爲“對該用戶而言,某個事物或屬性是透明的”。這與日常生活中的透明正好相反。
面向對象
面向對象(OOP)是相對於面向過程來講的,面向對象方法,把相關的數據和方法組織爲一個整體來看待,從更高的層次來進行系統建模,更貼近事物的自然運行模式。
同步
在網絡編程中,主要指某函數的執行方式,即函數調用者需等待函數執行完後才能進入下一步
亦稱直接制約關係,是指完成某種任務而建立的兩個或多個進程,這些進程因爲需要在某些位置上協調它們的工作次序而等待、傳遞信息所產生的制約關係。
異步
簡單理解爲‘非同步’
多線程與多任務
多任務是針對操作系統而言的,代表操作系統可以同時執行的程序個數;多線程是針對一個程序而言的,代表一個程序可以同時執行的線程個數,而每個線程可以完成不同的任務。
單工 半雙工 全雙工
單工:只有一個方向得通信而不能反方向的交互。也就是說只能A到B 不能B到A 例如:電視廣播 只能被動收聽
半雙工:通信雙方都可以發送或接收,但任何一方不能同時發送和接收,若想同時發送和接收需要兩條信道。A發送B接收 B發送A接收相對於單工,可以用一條信道就完成了雙方交互,只不過雙方無法及時交互(一條信道下)
全雙工:通信雙方可以同時發送或接收信息,兩條信道。 例如:網上聊天。
進程和線程
進程:進程是進程實體的運行過程,是系統進行資源分配和調度的一個獨立單位,就是程序的一次執行過程。
線程:是進程中的一個實體,是被系統獨立調度和分派的基本單位,它可以同屬於一個進程的其他線程共享進程中的全部資源,同一進程中多個線程之間可以併發執行。
臨界
一次僅允許一個進程使用的資源成爲臨界資源,許多物理設備都是臨界資源,如打印機。此外許多變量、數據都可以被若干進程共享,也屬於臨界資源。
互斥
也稱間接制約關係,當一個進程進入臨界區使用臨界資源時,另一個進程必須等待。
管程
利用共享數據結構抽象地表示系統中的共享資源,而把對該數據結構實施的操作定義爲一組過程。進程對共享資源的申請釋放等操作,都通過這組過程來實現,這組過程還可以根據資源情況,或接受或阻塞進程的訪問,確保每次僅有一個進程使用共享資源,這樣就可以統一管理對共享資源的所有訪問,實現進程互斥。這個代表共享資源的數據結構,以及由對該共享數據結構實施操作的一組過程所組成的資源管理程序,叫做管程。
臨界區
對臨界資源的訪問,必須互斥地訪問,在每個進程中,訪問臨界資源的那段代碼成爲臨界區