一篇文章帶你入門Java封裝
什么是封裝
Java中的封裝是將數(shù)據(jù)(變量)和作用于數(shù)據(jù)(方法)的代碼作為一個單元包裝在一起的機制。 在封裝中,類的變量將從其他類隱藏,并且只能通過當前類的方法訪問。
如何實現(xiàn)封裝
可以分為兩步:
第一步:將類的變量聲明為private。
第二步:提供公共set和get方法來修改和獲取變量的值。
代碼展示
public class User { private String name; private int age; private int id; private String address; public int getAge(){ return age; } public String getName(){ return name; } public int getId(){ return id; } public String getAddress(){ return address; } public void setName(String Newname){ name = Newname; } public void setAge(int Newage){ age = Newage; } public void setAddress(String Newaddress){ address= Newaddress; } } class Mainclass{ public static void main(String[] args) { User user = new User(); user.setAge(18); user.setName("Kevin"); user.setAddress("江蘇"); System.out.println("Name:"+user.getName()+",Age:"+user.getAge()); } }
上面就是一個寫好的封裝啦 但是有很多用戶,很多屬性,寫起來就很麻煩,下面提供一種一行代碼搞定的方法
構(gòu)造方法
public User{ // 方法名與類名同名 沒有返回值結(jié)構(gòu) 其他與普通方法無異 }
注意點:
對于每個類而言,都默認具有一個隱式的空參數(shù)構(gòu)造方法 如果顯式寫了任意一個構(gòu)造方法,空參數(shù)構(gòu)造方法都會被覆蓋
代碼展示
public class User { private String name; private int age; private int id; private String address; public User(String name, int age, int id, String address) { this.name = name; this.age = age; this.id = id; this.address = address; } public int getAge(){ return age; } public String getName(){ return name; } public int getId(){ return id; } public String getAddress(){ return address; } public void setName(String Newname){ name = Newname; } public void setAge(int Newage){ age = Newage; } public void setAddress(String Newaddress){ address= Newaddress; } public void setId(int Newid){ id = Newid;} } class Mainclass{ public static void main(String[] args) { User user = new User("kevin",18,001,"江蘇");//一行代碼就能賦值啦 System.out.println("Name:"+user.getName()+",Age:"+user.getAge()); } }
總結(jié)
封裝的優(yōu)點
- 良好的封裝能夠減少耦合。
- 類內(nèi)部的結(jié)構(gòu)可以自由修改。
- 可以對成員變量進行更精確的控制。
- 隱藏信息,實現(xiàn)細節(jié)。
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
Java中的NoSuchMethodException異常原因以及解決方案詳解
這篇文章主要介紹了Java中的NoSuchMethodException異常原因以及解決方案詳解,NoSuchMethodException是Java反射機制中的異常,在嘗試通過反射獲取方法時,找不到指定的方法,通常發(fā)生在調(diào)用?Class?對象的方法時,當方法名或方法參數(shù)不匹配時拋出該異常,需要的朋友可以參考下2024-02-02java使用CompletableFuture分批處理任務(wù)實現(xiàn)
本文主要介紹了java使用CompletableFuture分批處理任務(wù)實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧2024-07-07