抽象與封裝的區別
抽象是一個隱藏系統實現細節的過程,只有功能細節對使用者可用。另一方面,封裝是一種將資料和作用於資料的程式碼包裝到單個單元中的方法。
閱讀本文以瞭解更多關於抽象和封裝的資訊,以及它們彼此之間的區別。
什麼是抽象?
抽象定義為隱藏系統實現細節的過程。因此,透過使用抽象,我們只向用戶提供系統的功能。因此,使用者將瞭解系統做什麼,但不瞭解系統如何做。
例如,當我們考慮在谷歌上搜索的情況時,諸如一搜索查詢就會發生什麼,我們的Web伺服器使用的協議等複雜細節都被隱藏了。因此,要在谷歌上搜索,我們只需要輸入查詢,然後點選搜尋按鈕。
什麼是封裝?
封裝是面向物件程式設計(OOP)的基本概念之一。封裝定義為一種將資料包裝到單個單元中的方法。它用於將資料和作用於資料的程式碼一起包裝為單個單元。
在封裝中,類的變數對其他類隱藏,只能由當前類的成員函式訪問。因此,封裝也稱為資料隱藏。封裝是使用訪問修飾符(如public、private和protected)實現的。
抽象與封裝的區別
下表重點介紹了抽象和封裝之間所有重要的區別:
序號 |
抽象 |
封裝 |
---|---|---|
1. |
它是獲取資訊的過程。 |
它是一種幫助將資料包裝到單個模組中的方法。 |
2. |
此技術中的問題是在介面級別解決的。 |
封裝中的問題是在實現級別解決的。 |
3. |
它有助於隱藏不需要的細節/資訊。 |
它有助於使用單個實體或使用具有保護資訊功能的方法的單元來隱藏資料。 |
4. |
它可以使用抽象類和介面實現。 |
它可以使用訪問修飾符(如public、private和protected)實現。 |
5. |
實現的複雜性是使用介面和抽象類隱藏的。 |
資料使用getter和setter等方法隱藏。 |
6. |
抽象可以使用封裝在單個模組中的物件執行。 |
封裝中的物件不需要抽象。 |
結論
兩者之間最顯著的區別在於,資料抽象是一種幫助隱藏使用者不需要的資料的方法,而資料封裝是一種使用單個實體隱藏資料的方法。
廣告