一篇文章帶你入門Java封裝
更新時間:2021年08月03日 09:57:13 作者:Wxbbbbb
Java面向對象的三大特性:封裝、繼承、多態(tài)。下面對三大特性之一封裝進行了總結,需要的朋友可以參考下,希望能給你帶來幫助
什么是封裝
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());
}
}
上面就是一個寫好的封裝啦 但是有很多用戶,很多屬性,寫起來就很麻煩,下面提供一種一行代碼搞定的方法
構造方法
public User{
// 方法名與類名同名 沒有返回值結構 其他與普通方法無異
}
注意點:
對于每個類而言,都默認具有一個隱式的空參數(shù)構造方法 如果顯式寫了任意一個構造方法,空參數(shù)構造方法都會被覆蓋
代碼展示
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());
}
}
總結
封裝的優(yōu)點
- 良好的封裝能夠減少耦合。
- 類內部的結構可以自由修改。
- 可以對成員變量進行更精確的控制。
- 隱藏信息,實現(xiàn)細節(jié)。
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!
相關文章
Java中的NoSuchMethodException異常原因以及解決方案詳解
這篇文章主要介紹了Java中的NoSuchMethodException異常原因以及解決方案詳解,NoSuchMethodException是Java反射機制中的異常,在嘗試通過反射獲取方法時,找不到指定的方法,通常發(fā)生在調用?Class?對象的方法時,當方法名或方法參數(shù)不匹配時拋出該異常,需要的朋友可以參考下2024-02-02
java使用CompletableFuture分批處理任務實現(xiàn)
本文主要介紹了java使用CompletableFuture分批處理任務實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-07-07

