最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java超詳細(xì)介紹封裝與訪問(wèn)控制修符

 更新時(shí)間:2022年05月13日 16:13:17   作者:花~盜  
封裝是一個(gè)非常廣泛的概念,小到一個(gè)屬性的封裝,大到一個(gè)框架或者一個(gè)項(xiàng)目的封裝,文中通過(guò)實(shí)例代碼將詳細(xì)介紹封裝與訪問(wèn)控制修飾符

概念:我們?cè)趯懭胍粋€(gè)類的時(shí)候,為了保護(hù)里邊的屬性不被隨意的調(diào)用這是我們可以使用特殊的修飾符進(jìn)行相應(yīng)的保護(hù),而這樣的話我們似乎只能在該類中調(diào)用使用了,出現(xiàn)某些特殊情況時(shí)就會(huì)無(wú)法發(fā)調(diào)用,雖然挺高了安全性但也降低了靈活性,這個(gè)時(shí)候我們的包裝類就出現(xiàn)了,我們通過(guò)對(duì)某個(gè)方法的進(jìn)行特殊方法的包裝來(lái)對(duì)其進(jìn)行相應(yīng)的調(diào)用與賦值。就相當(dāng)于銀行為了保護(hù)財(cái)產(chǎn)會(huì)選擇將金錢放進(jìn)保險(xiǎn)柜中來(lái)確保其的安全,但是當(dāng)我們要取錢時(shí),銀行就要拿鑰匙打開(kāi)保險(xiǎn)柜。修飾符相當(dāng)于銀行的保險(xiǎn)柜,封裝相當(dāng)于保險(xiǎn)柜的鑰匙。

訪問(wèn)修飾符如下:

1) public 公共控制修飾符

2) protected 保護(hù)訪問(wèn)控制修飾符

3) default 缺省默認(rèn)控制修飾符

4) private 私有訪問(wèn)控制符

它們的訪問(wèn)權(quán)限如下圖:

包裝的特點(diǎn):

1)便于正確使用系統(tǒng),防止錯(cuò)誤修改屬性

2)有助于系統(tǒng)之間的松耦合,提高系獨(dú)立性

3)提高軟件的重用性

4)降低了構(gòu)建大型系統(tǒng)的風(fēng)險(xiǎn)

包裝的快捷鍵:

大部分的編譯軟件都有相應(yīng)的包裝快捷鍵就例如我用的開(kāi)發(fā)工具idea就像相對(duì)應(yīng)的get()set()有參無(wú)參構(gòu)造方法如下圖

我們右鍵單擊后會(huì)出現(xiàn)相應(yīng)選項(xiàng)我們點(diǎn)擊Generate,也有相應(yīng)的快捷鍵Alt+Insert直接打開(kāi)Generate

進(jìn)入Generate后我們選擇Constructor

該選項(xiàng)是選擇無(wú)參和有參構(gòu)造的,我們?nèi)x點(diǎn)擊OK即可將所有的私有屬性進(jìn)行有參構(gòu)造,點(diǎn)擊

Select None則是進(jìn)行無(wú)參構(gòu)造

再次進(jìn)入Generate后我們選擇Getter and Setter

該選項(xiàng)是構(gòu)造方法引入和修改私有屬性,Getter()表示獲屬性,Setter()表示修改屬性,進(jìn)入后我們?nèi)x點(diǎn)擊OK,就可以進(jìn)行構(gòu)造。

測(cè)試類代碼如下:

package com.ytzl.total;
/*封裝類*/
public class test {
    public static void main(String[] args) {
        //實(shí)例化一個(gè)對(duì)象
        encapsulation encapsulation = new encapsulation();
        System.out.println("通過(guò)封裝方法獲取封裝類中的私有屬性==>"+encapsulation.getA());
        System.out.println("通過(guò)封裝方法獲取封裝類中的私有屬性==>"+encapsulation.getB());
        //我們也可以通過(guò)相應(yīng)的構(gòu)造方法來(lái)改變風(fēng)種類中的私有屬性
        encapsulation.setA(20);
        encapsulation.setB("被是同相應(yīng)的構(gòu)造方法進(jìn)行改變");
        System.out.println("通過(guò)封裝方法獲取封裝類中的私有屬性==>"+encapsulation.getA());
        System.out.println("通過(guò)封裝方法獲取封裝類中的私有屬性==>"+encapsulation.getB());
        //我們也可以通過(guò)封裝方法來(lái)改變封裝類中的私有屬性
        encapsulation encapsulation1 = new encapsulation(10,"被調(diào)用方法改變后");
        System.out.println("通過(guò)調(diào)用方法類來(lái)改變封裝類中的私有屬性后==>"+encapsulation1.getA());
        System.out.println("通過(guò)調(diào)用方法類來(lái)改變封裝類中的私有屬性后==>"+encapsulation1.getB());
    }
}

實(shí)體類代碼如下:

package com.ytzl.total;
public class encapsulation {
    private int a=8;
    private String b="私有屬性";
    public encapsulation() {
    }
    //如果需要在調(diào)用方法中改變私有屬性需要調(diào)用該有參方法
    public encapsulation(int a, String b) {
        this.a = a;
        this.b = b;
    }
    public int getA() {
        return a;
    }
    public void setA(int a) {
        this.a = a;
    }
    public String getB() {
        return b;
    }
    public void setB(String b) {
        this.b = b;
    }
}

運(yùn)行結(jié)果如下:

到此這篇關(guān)于Java超詳細(xì)介紹封裝與訪問(wèn)控制修符的文章就介紹到這了,更多相關(guān)Java封裝內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring中@Scheduled和HttpClient的連環(huán)坑

    Spring中@Scheduled和HttpClient的連環(huán)坑

    這篇文章主要給大家介紹了關(guān)于Spring中@Scheduled和HttpClient的連環(huán)坑,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • Springboot中分析SQL性能的兩種方式詳解

    Springboot中分析SQL性能的兩種方式詳解

    文章介紹了SQL性能分析的兩種方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置簡(jiǎn)單,適用于開(kāi)發(fā)和測(cè)試環(huán)境,但高版本已棄用;p6spy框架功能更強(qiáng)大,可以自定義日志輸出格式,但在生產(chǎn)環(huán)境中使用需謹(jǐn)慎,感興趣的朋友一起看看吧
    2025-02-02
  • Java線程池7個(gè)參數(shù)的詳細(xì)含義

    Java線程池7個(gè)參數(shù)的詳細(xì)含義

    java多線程開(kāi)發(fā)時(shí),常常用到線程池技術(shù),這篇文章是對(duì)創(chuàng)建java線程池時(shí)的七個(gè)參數(shù)的詳細(xì)解釋,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 簡(jiǎn)單談?wù)凷truts動(dòng)態(tài)表單(DynamicForm)

    簡(jiǎn)單談?wù)凷truts動(dòng)態(tài)表單(DynamicForm)

    下面小編就為大家?guī)?lái)一篇簡(jiǎn)單談?wù)凷truts動(dòng)態(tài)表單(DynamicForm)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • Java?Date類的使用方式(日期處理)

    Java?Date類的使用方式(日期處理)

    本文介紹了Java中的Date類和Calendar類的使用,詳細(xì)講解了Date類的構(gòu)造方法和常用方法,并通過(guò)一個(gè)實(shí)例演示了如何使用Date類來(lái)比較兩個(gè)時(shí)間點(diǎn)之間的關(guān)系
    2024-11-11
  • 一分鐘入門Java Spring Boot徹底解決SSM配置問(wèn)題

    一分鐘入門Java Spring Boot徹底解決SSM配置問(wèn)題

    Spring Boot是由Pivotal團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來(lái)簡(jiǎn)化新Spring應(yīng)用的初始搭建以及開(kāi)發(fā)過(guò)程。該框架使用了特定的方式來(lái)進(jìn)行配置,從而使開(kāi)發(fā)人員不再需要定義樣板化的配置。通過(guò)這種方式,Spring Boot致力于在蓬勃發(fā)展的快速應(yīng)用開(kāi)發(fā)領(lǐng)域成為領(lǐng)導(dǎo)者
    2021-10-10
  • Java中前端傳參含有“+”“=”等特殊字符處理方式

    Java中前端傳參含有“+”“=”等特殊字符處理方式

    這篇文章主要介紹了Java中前端傳參含有“+”“=”等特殊字符處理,比如“+”如果不經(jīng)過(guò)處理,傳到Java后臺(tái)之后,就變成空格了,“=”就直接沒(méi)了,本文對(duì)這一問(wèn)題給大家詳細(xì)講解,需要的朋友可以參考下
    2023-10-10
  • Spring 使用Validation 驗(yàn)證框架的問(wèn)題詳解

    Spring 使用Validation 驗(yàn)證框架的問(wèn)題詳解

    Spring Boot在內(nèi)部通過(guò)集成hibernate-validation已經(jīng)實(shí)現(xiàn)了JSR-349驗(yàn)證規(guī)范接口,在Spring Boot項(xiàng)目中只要直接使用就行了。 一般用在Controller中用于驗(yàn)證前端傳來(lái)的參數(shù)。這篇文章給大家介紹Spring Validation 驗(yàn)證框架的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2021-07-07
  • 詳解java爬蟲jsoup解析多空格class數(shù)據(jù)

    詳解java爬蟲jsoup解析多空格class數(shù)據(jù)

    在本篇內(nèi)容中小編給大家分享了java爬蟲jsoup怎么解析多空格class數(shù)據(jù)的方法和技巧,需要的朋友們跟著學(xué)習(xí)下。
    2018-12-12
  • Java如何調(diào)用wsdl的webservice接口

    Java如何調(diào)用wsdl的webservice接口

    這篇文章主要介紹了Java如何調(diào)用wsdl的webservice接口問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05

最新評(píng)論

达孜县| 营口市| 临颍县| 邢台县| 华容县| 疏勒县| 广宁县| 汤原县| 沙田区| 兴仁县| 惠州市| 平陆县| 怀化市| 聂荣县| 南郑县| 通榆县| 镇坪县| 新巴尔虎右旗| 五台县| 永新县| 灵台县| 宜春市| 永川市| 孟村| 宝山区| 邵阳市| 莱州市| 册亨县| 遵义县| 西吉县| 龙江县| 桐城市| 乐清市| 尚志市| 松桃| 井陉县| 石河子市| 遂平县| 温泉县| 大关县| 色达县|