① 數據結構里抽象數據類型定義有什麼用
使人們能夠獨立於程序的實現細節來理解數據結構的特性。
抽象數據類型通常是對數據的某種抽象,定義了數據的取值范圍及其結構形式,以及對數據操作的集合。
例如,各種高級程序設計語言中都有「整數」類型,盡管它們在不同處理器上實現的方法不同,但對程序員而言是「相同的」,即數學特性相同。從「數學抽象」的角度看,可稱它為一個「抽象數據類型」。
抽象數據類型的特徵是將使用與實現分離,從而實行封裝和隱藏信息。抽象數據類型通過一種特定的數據結構在程序的某個部分得以實現,只關心在這個數據類型上的操作,而不關心數據結構具體實現。
數據結構里將問題通過實體分析,分層分類地實現抽象數據類型,從而進行簡單應用編程(基於對象編程)以數據抽象為主的抽象編程。
這種抽象編程,通過數據類型復用,方便編程,方便維護和擴展,其效果比過程化編程更好編程語言中沒有許多具體的數據類型
要解決實際問題,很大部分工作是要建立數據模式與實際問題的對應,也就是建立抽象數據類型的過程對象化編程就是基於分層分類的抽象數據類型之具體編程,它能更好地實現數據結構和演算法,便是將N.Wirth的程序公式:
程序=演算法+數據結構具體化為:程序=演算法+抽象數據類型。
② java 關於過程抽象和數據抽象的問題
抽 象——就是把現實世界中的某一類東西,提取出來,用程序代碼表示,抽象出來一般叫做類或者介面。
數據抽象——就是用代碼的形式,表示現實世界中一類事物的特性,比如人的姓名,年齡等,抽象出來一般叫做屬性或者成員變數等。
抽象過程——就是用代碼的形式,表示現實世界中事物的一系列行為,比如人可以吃飯等,抽象出來一般叫做方法。