JavaSE 學(xué)習(xí)參考:成員內(nèi)部類

內(nèi)部類

內(nèi)部類是定義在類的內(nèi)部的類,其所在的類稱為外部類。內(nèi)部類分為成員內(nèi)部類和靜態(tài)內(nèi)部類。

成員內(nèi)部類

成員內(nèi)部類是依賴于外部類的,其對象可以訪問外部類的成員變量和方法,其目的是為外部類提供復(fù)合成員數(shù)據(jù)和算法,例如List接口的實例類都提供了遍歷元素的迭代器,這些迭代器都是實現(xiàn)了Iterator接口的位于List接口實現(xiàn)類的內(nèi)部或方法中。成員內(nèi)部類不能獨立實例化,必須通過外部類的對象才能實例化,如下例的代碼:

Outter.Inner in=out.new Inner();

其中out是外部類的對象。

packaged;

classOutter{

intvalue;

publicintgetValue(){

returnvalue;

}

publicvoidsetValue(intvalue){

this.value=value;

}

@Override

publicString toString() {

return"Outter.value="+value;

}

classInner {

intval;

publicintgetVal() {

returnval;

}

publicvoidsetVal(intval) {

this.val=val;

}

publicvoidsetOutterVal(intv) {

value=v;//訪問外部類成員變量

}

publicString toString() {

return"Inner.val="+val;

}

}

}

publicclassDemo {

publicstaticvoidmain(String[]args) {

Outterout=newOutter();

out.setValue(100);

System.out.println(out);

Outter.Innerin=out.newInner();

in.setVal(50);

System.out.println(in);

in.setOutterVal(200);

System.out.println(out);

}

}

運行程序,結(jié)果如下圖所示:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,673評論 18 399
  • Java 內(nèi)部類 分四種:成員內(nèi)部類、局部內(nèi)部類、靜態(tài)內(nèi)部類和匿名內(nèi)部類。 1、成員內(nèi)部類: 即作為外部類的一個成...
    ikaroskun閱讀 1,355評論 0 13
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 4,011評論 0 11
  • 小編費力收集:給你想要的面試集合 1.C++或Java中的異常處理機制的簡單原理和應(yīng)用。 當(dāng)JAVA程序違反了JA...
    八爺君閱讀 5,204評論 1 114
  • 魔獸世界之旅 目錄 我們回到修道院,斗篷女要我去找戰(zhàn)士大師: “去和他聊聊,說不定你會變強點。” “真的是聊聊就可...
    灰谷的雨閱讀 261評論 0 0

友情鏈接更多精彩內(nèi)容