茫茫人海千千萬萬,感謝這一秒你看到這里,希望我的面試題系列能對你的有所幫助!共勉!
愿你在未來的日子,保持熱愛,奔赴山海!
Java基礎知識(封裝)
🍇 封裝
那封裝是什么呢?
在面向物件程式設計方法中,封裝(英語:Encapsulation)是指一種將抽象性函式介面的實作細節部分包裝、隱藏起來的方法,
🍈 封裝的目的
- 直接通過操控類物件來達到目的,不需要對具體實作十分了解,使類屬性和方法的具體實作對外不可見,不但方便還起到了保護作用,
- 封裝最主要的功能在于我們能修改自己的實作代碼,而不用修改那些呼叫我們代碼的程式片段,
- 適當的封裝可以讓程式碼更容易理解與維護,也加強了程式碼的安全性,
🍉 封裝的好處
- 良好的封裝能夠減少耦合,
- 類內部的結構可以自由修改,
- 可以對成員變數進行更精確的控制,
- 隱藏資訊,實作細節,
🍊 封裝的步驟
-
修改屬性的可見性來限制對屬性的訪問(一般限制為private),例如:
public class Person {
private String name ; // 姓名
private String gender ; // 性別
private int age; // 年齡
}
這段代碼中,將 name 、sex和 age 屬性設定為私有的,只能本類才能訪問,其他類都訪問不了,如此就對資訊進行了隱藏,
-
對每個值屬性提供對外的公共方法訪問,也就是創建一對賦取值方法,用于對私有屬性的訪問,例如:
public class Person { private String name ; // 姓名 private String gender ; // 性別 private int age; // 年齡 public void setName(String name) { this.name = name; } public String getName() { return name; } public void setGender(String gender) { this.gender = gender; } public String gender(){ return gender; } public void setAge(int age) { this.age = age; } public int getAge() { return age; } }采用 this 關鍵字呼叫本類中的屬性,也就是類中的成員變數,主要為了解決實體變數(private String name)和區域變數(setName(String name)中的name變數)之間發生的同名的沖突,
🍋 封裝的例子
-
創建一個用戶類User:

代碼如下:
package com.ygt.pojo; public class User { private String username; // 用戶名 private String password; // 密碼 public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } } -
撰寫測驗User的demo:EncapsulationDemo

代碼如下:
package com.ygt; import com.ygt.pojo.User; public class EncapsulationDemo { public static void main(String[] args) { User user = new User(); user.setUsername("最愛吃魚罐頭"); user.setPassword("520"); System.out.println("username: " + user.getUsername() + "-----------" + "password: " + user.getPassword()); } }執行結果如下:
username:最愛吃魚罐頭-----------password520
🌸總結
相信各位看官都對封裝有深入的了解吧,那我們繼續期待更多Java基礎相關的內容吧!歡迎期待下一章的到來!
封裝實際上是將類的某些資訊隱藏在類的內部,不允許外部程式直接訪問,而是通過該類提供的方法來實作對隱藏資訊的訪問和操作,就是把我們想提供給外界的一些方法給暴露出來,以便外界能呼叫到我們,

讓我們也一起加油吧!本人不才,如有什么缺漏、錯誤的地方,也歡迎各位人才大佬評論中批評指正!當然如果這篇文章確定對你有點小小幫助的話,也請親切可愛的人才大佬們給個點贊、收藏下吧,一鍵三連,非常感謝!

學到這里,今天的世界打烊了,晚安!雖然這篇文章完結了,但是我還在,永不完結,我會努力保持寫文章,來日方長,何懼車遙馬慢!
感謝各位看到這里!愿你韶華不負,青春無悔!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/413895.html
標籤:java
