java封裝實(shí)例用法講解
我們可以選擇把類(lèi)的方法、屬性裝起來(lái),便于日后的程序書(shū)寫(xiě)和使用,這種處理方法就是封裝的思想。因?yàn)榉庋b類(lèi)之后,其他的外部類(lèi)方法就不能在混入其中,對(duì)代碼的安全性進(jìn)行了提高。接下來(lái)我們就對(duì)java中封裝的概念、目的進(jìn)行介紹,然后在實(shí)例中為大家演示封裝的方法。
1.概念
封裝性是面向?qū)ο笕筇卣髦?,是指一種將抽象性函式接口的實(shí)現(xiàn)細(xì)節(jié)部份包裝、隱藏起來(lái)的方法。封裝可以被認(rèn)為是一個(gè)保護(hù)屏障,防止該類(lèi)的代碼和數(shù)據(jù)被外部類(lèi)定義的代碼隨機(jī)訪(fǎng)問(wèn)。
2.目的
(1)辛苦一次,后面都能少敲很多代碼,增強(qiáng)了代碼得復(fù)用性
(2)簡(jiǎn)化代碼,看起來(lái)更容易懂
(3)隱藏核心實(shí)現(xiàn)邏輯代碼,簡(jiǎn)化外部邏輯,并且不讓其他人修改,jar 都這么干
(4)一對(duì)一,一個(gè)功能就只為這個(gè)功能服務(wù);避免頭發(fā)繩子一塊用,導(dǎo)致最后一團(tuán)糟
3.實(shí)例
編寫(xiě)一個(gè)包含名為Calculator類(lèi)的程序。定義兩個(gè)整型屬性以及對(duì)該兩個(gè)變量的setter和getter,編寫(xiě)用于對(duì)兩個(gè)屬性執(zhí)行加、減、乘、除運(yùn)算方法。在main方法里創(chuàng)建該類(lèi)的對(duì)象并訪(fǎng)問(wèn)這些方法。
package Qingdenggufuo;
public class Calculator {
private int a;//定義屬性
private int b;
int c;
public void setA(int a){ //構(gòu)造方法
this.a=a;
}
public int getA(){
return a; //返回到private int a;
}
public void setB(int b){
this.b=b;
}
public int getB() {
return b;
}
public void augment(){ //方法
c=a+b;
System.out.println(c);
}
public void reduce(){
c=a-b;
System.out.println(c);
}
public void ride(){
c=a*b;
System.out.println(c);
}
public void divide(){
c=a/b;
System.out.println(c);
}
}
內(nèi)容擴(kuò)展:
為什么需要封裝
通過(guò)封裝,可以實(shí)現(xiàn)對(duì)屬性的數(shù)據(jù)訪(fǎng)問(wèn)限制,同時(shí)增加了程序的可維護(hù)性。
由于取值方法和賦值方法隱藏了實(shí)現(xiàn)的變更,因此并不會(huì)影響讀取或修改該屬性的類(lèi),避免了大規(guī)模的修改,程序的可維護(hù)性增強(qiáng)。
如何實(shí)現(xiàn)封裝,實(shí)現(xiàn)封裝的具體方法
(1)、修改屬性的可見(jiàn)性來(lái)限制對(duì)屬性的訪(fǎng)問(wèn)。
(2)、為每個(gè)屬性創(chuàng)建一對(duì)賦值方法和取值方法,用于對(duì)這些屬性的訪(fǎng)問(wèn)。
(3)、在賦值和取值方法中,加入對(duì)屬性的存取的限制。
到此這篇關(guān)于java封裝實(shí)例用法講解的文章就介紹到這了,更多相關(guān)java封裝是什么內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring Bean初始化及銷(xiāo)毀多種實(shí)現(xiàn)方式
這篇文章主要介紹了Spring Bean初始化及銷(xiāo)毀多種實(shí)現(xiàn)方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11
淺析Spring?Cloud?Gateway中的令牌桶限流算法
這篇文章主要為大家淺析了Spring?Cloud?Gateway中的令牌桶限流算法原理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-02-02
關(guān)于mybatis resulttype 返回值異常的問(wèn)題
這篇文章主要介紹了mybatis resulttype 返回值異常的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08
Java實(shí)現(xiàn)的文本字符串操作工具類(lèi)實(shí)例【數(shù)據(jù)替換,加密解密操作】
這篇文章主要介紹了Java實(shí)現(xiàn)的文本字符串操作工具類(lèi),可實(shí)現(xiàn)數(shù)據(jù)替換、加密解密等操作,涉及java字符串遍歷、編碼轉(zhuǎn)換、替換等相關(guān)操作技巧,需要的朋友可以參考下2017-10-10
Java 正則表達(dá)式入門(mén)詳解(基礎(chǔ)進(jìn)階)
最近看到很多同學(xué)想要學(xué)習(xí)java正則表達(dá)式的一些知識(shí),那么腳本之家小編就為大家介紹一下,其實(shí)正則表達(dá)式實(shí)用性很強(qiáng),處理大幅文字的時(shí)候都需要用得到,語(yǔ)法也大同小異2017-10-10

