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

java類訪問權(quán)限與成員訪問權(quán)限解析

 更新時(shí)間:2016年02月16日 11:03:29   投稿:lijiao  
這篇文章主要針對(duì)java類訪問權(quán)限與成員訪問權(quán)限進(jìn)行解析,對(duì)類與成員訪問權(quán)限進(jìn)行驗(yàn)證,感興趣的小伙伴們可以參考一下

在寫代碼的時(shí)候有個(gè)問題:包內(nèi)定義了一個(gè)接口類,另外一個(gè)包要實(shí)現(xiàn)它,這里采用接口隔離與依賴倒置原則,將兩個(gè)包的依賴關(guān)系倒置過來。但是,這里就遇到了一個(gè)問題,實(shí)現(xiàn)類采用工廠模式來實(shí)例化,所以實(shí)現(xiàn)類就不想暴露給包外,但是實(shí)現(xiàn)類還要實(shí)現(xiàn)public接口。所以這里有產(chǎn)生了一個(gè)疑問,如果類是default類型,成員函數(shù)是public類型,那么訪問限制是怎樣的呢?
實(shí)現(xiàn)驗(yàn)證
1. 先在一個(gè)包中定義一個(gè)接口類:

package mytest
  
public interface ClassAccessTest
{
  void getData();
  CharSeqence getString();
}

2. 在實(shí)現(xiàn)包中定義實(shí)現(xiàn)類和工廠

package classaccesstest
  
import mytest.ClassAccessTest
  
class ClassAccessTestImp implements ClassAccessTest
{
  int mA = 0;
  
  ClassAccessTestImp(int a)
  {
    mA = a;
  }
  
  public void getData()
  {
    System.out.printlin(" the data is     " + mA);
  }
  
  public CharSequence getString()
  {
    return (" the data is " + mA);
  }
  

package classaccesstest
  
import mytest.ClassAccessTest
  
public class Factory
{
  public static ClasAccessTest getAccessTest()
  {
    return new ClassAccessTestImp(10);
  }
}

3. 再在原包中使用接口:

package mytest
  
import classacesstest.Factory

//import classaccesstest.ClassAccessTestImp
  
public class TestMain
{
  public static void main(String arg[])
  {
    Factory.getAccessTest().getString();

<span style="white-space:pre">  </span>//<span style="font-family: Arial, Helvetica, sans-serif;">ClassAccessTest test = </span>new <span style="font-family: Arial, Helvetica, sans-serif;">ClassAccessTestImp(10);</span>
  
  }
}

4.結(jié)果:
在TestMain類中,使用非注釋掉的部分可以正常運(yùn)行,使用注釋掉的部分會(huì)報(bào)錯(cuò),ClassAccessTestImp未定義
結(jié)論
由上推論出,java中類的訪問權(quán)限是可以小于成員的訪問權(quán)限的,依賴倒置和包的封裝性的要求下,可以實(shí)現(xiàn)滿足要求。

相關(guān)文章

  • java實(shí)現(xiàn)角色及菜單權(quán)限的項(xiàng)目實(shí)踐

    java實(shí)現(xiàn)角色及菜單權(quán)限的項(xiàng)目實(shí)踐

    在Java中,實(shí)現(xiàn)角色及菜單權(quán)限管理涉及定義實(shí)體類、設(shè)計(jì)數(shù)據(jù)庫表、實(shí)現(xiàn)服務(wù)層和控制器層,這種管理方式有助于有效控制用戶權(quán)限,適用于企業(yè)級(jí)應(yīng)用,感興趣的可以一起來了解一下
    2024-09-09
  • java ExecutorService使用方法詳解

    java ExecutorService使用方法詳解

    這篇文章主要為大家詳細(xì)介紹了java ExecutorService使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • java中split()方法以及常見算法經(jīng)典案例

    java中split()方法以及常見算法經(jīng)典案例

    這篇文章主要介紹了java中split()方法以及常見算法的相關(guān)資料,split()方法可以根據(jù)指定的正則表達(dá)式將字符串分割成多個(gè)子字符串,并返回一個(gè)字符串?dāng)?shù)組,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-04-04
  • Java如何正確處理下載文件時(shí)HTTP頭的編碼問題

    Java如何正確處理下載文件時(shí)HTTP頭的編碼問題

    這篇文章主要介紹了Java如何正確處理下載文件時(shí)HTTP頭的編碼問題,
    通常HTTP消息包括客戶機(jī)向服務(wù)器的請(qǐng)求消息和服務(wù)器向客戶機(jī)的響應(yīng)消息,今天來講解下正確處理下載文件時(shí)HTTP頭的編碼問題,需要的朋友可以參考下
    2023-07-07
  • java工廠實(shí)例BeanFactoryPostProcessor和BeanPostProcessor區(qū)別分析

    java工廠實(shí)例BeanFactoryPostProcessor和BeanPostProcessor區(qū)別分析

    這篇文章主要為大家介紹了BeanFactoryPostProcessor和BeanPostProcessor區(qū)別示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • gradle和maven有哪些區(qū)別

    gradle和maven有哪些區(qū)別

    這篇文章主要介紹了gradle和maven有哪些區(qū)別,幫助大家更好的理解和選擇java程序的構(gòu)建工具,感興趣的朋友可以了解下
    2021-01-01
  • Jsoup解析HTML實(shí)例及文檔方法詳解

    Jsoup解析HTML實(shí)例及文檔方法詳解

    這篇文章主要介紹了Jsoup如何解析一個(gè)HTML文檔、從文件加載文檔、從URL加載Document等方法,對(duì)Jsoup常用方法做了詳細(xì)講解,最近提供了一個(gè)示例供大家參考 使用DOM方法來遍歷一個(gè)文檔 從元素抽取屬性,文本和HTML 獲取所有鏈接
    2013-11-11
  • idea導(dǎo)入springboot項(xiàng)目沒有maven的解決

    idea導(dǎo)入springboot項(xiàng)目沒有maven的解決

    這篇文章主要介紹了idea導(dǎo)入springboot項(xiàng)目沒有maven的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • MyBatis啟動(dòng)時(shí)控制臺(tái)無限輸出日志的原因及解決辦法

    MyBatis啟動(dòng)時(shí)控制臺(tái)無限輸出日志的原因及解決辦法

    這篇文章主要介紹了MyBatis啟動(dòng)時(shí)控制臺(tái)無限輸出日志的原因及解決辦法的相關(guān)資料,需要的朋友可以參考下
    2016-07-07
  • java根據(jù)模板動(dòng)態(tài)生成PDF實(shí)例

    java根據(jù)模板動(dòng)態(tài)生成PDF實(shí)例

    本篇文章主要介紹了java根據(jù)模板動(dòng)態(tài)生成PDF實(shí)例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-04-04

最新評(píng)論

肥东县| 秦皇岛市| 北票市| 元氏县| 宜君县| 松原市| 太湖县| 东海县| 垣曲县| 搜索| 合水县| 高尔夫| 石阡县| 沾化县| 酒泉市| 临沂市| 外汇| 体育| 泌阳县| 塔河县| 射洪县| 阳谷县| 孟连| 牡丹江市| 迁西县| 凉山| 长兴县| 宝鸡市| 和林格尔县| 台北市| 弥渡县| 阿尔山市| 白银市| 连平县| 桃园县| 沽源县| 遵义县| 舒城县| 古丈县| 彭水| 克拉玛依市|