通過示例了解 OOPS 中的封裝

已發表: 2022-04-29

程序員在編程時編寫冗長的代碼始終是一個挑戰。 因此,程序員專注於創建包含定義良好的接口和協議的小型軟件單元或程序。 然而,創建如此小的單位的關鍵挑戰是限制來自其他單位的干擾。 這一挑戰在面向對象編程系統 (OOPS) 的幫助下得以解決,因為它表示具有批准接口的對象,並且在實施時沒有任何障礙。

本篇博客將幫助你了解編程中OOPS的概念以及OOPS中的封裝過程。

目錄

OOPS 中的封裝是什麼?

Java中的面向對象編程或OOPS是一種與現實世界對象相關的編程範式或方法。 它利用對世界的感知,以對象的形式封裝數據聚合。 OOPS 是通過消息相互通信的各種對象的集合。 面向對象編程有幾個優點。 它增強了團隊編程,因為程序員獨立工作以處理單個單元。 由於它包括一個自然範式,它還減少了認知負荷。

與面向對象編程相關的最重要的概念之一是封裝。 它與數據隱藏密切相關。 為了更好地理解封裝的概念,我們必須與自然世界範式聯繫起來。 例如,當我們觀察周圍的物體時,一個特定的物體是完整的。 它類似於它的特性和特性。 這意味著對象的屬性或性質被封裝在其中。 我們不必查看其他對象來找出特定對象的屬性。 但是,某些對象具有在表面上不可見的隱藏屬性。 只有當兩個或多個對象相互交互或通信時,我們才能看到那些隱藏的屬性。

這就是現實世界中封裝的概念——對像是獨立的,特定的屬性在前面可見。 相反,某些特徵是隱藏的,只有在與另一個對象交流時才能看到。

程序員在編程中使用了這種封裝的概念。 它們將屬性或屬性單獨添加到對象。 封裝允許幾個程序員獨立地處理一個程序。 它有助於在後期進行有效的協作。 使用封裝,您不必擔心任何其他對象會干擾您的對象——您可以邀請其他程序員或對像在受控環境中與您的對象進行交互。 在 Java 語言中,我們必須使用語言結構來組合變量和函數。

簡單來說,封裝是指將對象的表示隱藏在一個類中。 即使有人對類的特定組件進行了修改,封裝也禁止對對象的表示進行任何更改。 在封裝中,代碼綁定和操作數據。 在代碼和外部表示之間存在一堵牆或一道屏障。

封裝後,您的代碼應該很容易被其他人訪問。 它不應該是技術性的或難以操作的,任何人都不能干預內部框架。 在編程中,封裝將所有類分開並防止不必要的干擾。

從世界頂級大學學習在線軟件開發課程。 獲得行政 PG 課程、高級證書課程或碩士課程,以加快您的職業生涯。

封裝框架

封裝框架區分了一個類中的規範和實現過程。 規範是指一個類向其客戶提供的特定消息或服務。 另一方面,實現是指在一個類中表示對像以及對像如何通過適當的系統相互交互。 雖然規範側重於“什麼”,但實施指的是“如何”。

封裝有助於創建可以在外部更改的抽像數據類型。 為了控制封裝,我們可以用不同的訪問修飾符聲明變量。 在 Java 中,封裝只保護對象的名稱,而不保護對象本身。 為了實現封裝過程,我們需要將實例變量設為私有,以防他人查看或修改。 類方法只允許用戶獲取和設置變量的值。

在 C++ 語言中,封裝將類接口與實現過程分開。 但是,類的定義必須包括對象表示的某些方面。

在 Java 語言中,封裝是指將類接口和實現集成在一個文件中。

封裝示例

以下示例將幫助您更好地理解封裝的概念:

  • 在冰箱中,內部電線由充當屏蔽的外部主體保護。 我們在外面看到的和里面是分開的。 它被稱為封裝。 外殼可防止對內部電線或按鈕的任何干擾。
  • 在方向盤中,我們也轉動方向盤來移動車輛。 我們看到的只是具有特定特徵和表徵的獨立對象。 我們不關心輪子的內部實現,也不能干涉它。
  • 另一個理解封裝概念的好例子是計算器。 用戶不知道計算器如何在內部工作。 他們知道,如果將值相加並按下特定功能(如加法、減法、除法或乘法),他們將獲得所需的結果。 同樣,在程序的封裝中,用戶只能看到對象的表示,而看不到它們是如何實現的。

OOPS 中封裝的優點是什麼?

以下是封裝在編程中的幾個好處:

  • 封裝使程序更容易維護。 它減少了程序開發所花費的時間並提高了軟件的質量。
  • 它減少了外部環境中的技術性。
  • 封裝使一個類成為私有的,並對其他用戶隱藏實現細節。
  • 封裝的代碼也可以重複使用,因為它對外部環境是隱藏的。

封裝與抽象和繼承有何不同?

與封裝類似,編程中的抽象概念是指數據隱藏。 只有對象的基本屬性對用戶可見。 同時,所有不必要的信息都被隱藏起來。 抽象最顯著的好處是它減少了不必要的複雜性。 抽像地說,只有相關數據才能在用戶面前獲得。 它隱藏了不相關和不必要的信息。 我們可以用微波爐的實例來理解抽象的概念。 我們把食物放在微波爐裡,按下一些按鈕,很快我們就得到了熱食。 我們不關心微波爐的內部工作原理、功能以及應該用哪根電線做什麼等。

在封裝中,主要目的是保護內部信息免受外界不必要的干擾。 它以單位隱藏數據,以便其他人無法修改它。 然而,抽像地說,這個想法是讓不相關的信息遠離用戶並增強簡單的使用。

面向對象編程中的另一個重要概念是繼承。 它是指一個類獲取或繼承另一個類的屬性的過程。

結論

由於面向對象編程有幾個好處,公司更喜歡具有 OOP 技能的開發人員。 印度面向對象編程工作的平均工資為每年 8,75,000 印度盧比。 如果您已經是一名軟件開發人員,那麼深入了解 OOP 將更有可能促進您的職業發展。

軟件開發執行 PG 計劃 - upGrad 的全棧開發專業化是希望獲得與軟件開發相關的實用技能的在職專業人士和新生的理想選擇。 本課程將教授您各種技能,包括軟件開發、構建網站、後端 API 和交互式 UI。 此外,您還將從事多個項目和任務,以提高您的簡歷。 除了所有這些,upGrad 還為所有學習者提供 360 度的職業支持。

什麼是面向對象編程?

面向對象編程是一種計算機編程技術,它使用數據和對象來構建程序,而不是使用各種功能。 OOP 從現實世界的實體中汲取靈感,並專注於在編程中實現這些過程。

什麼是 OOP 中的封裝?

面向對象編程中的封裝意味著隱藏信息以使其免受外部因素的影響。 在封裝中,對象的實現對其他程序員是隱藏的,只有對象的表示是可見的。 它可以幫助程序員在程序上獨立工作。

在 OOP 中封裝有什麼好處?

由於封裝隱藏了數據,因此它具有各種優點。 它使實現免受外部修改的影響。 它還減少了技術性並使程序員更容易維護程序。