課程
/后端開發(fā)
/Java
/Java入門第二季 升級版
內(nèi)部類可以訪問外部類的方法嗎?
2016-05-31
源自:Java入門第二季 升級版 7-6
正在回答
shi是可以訪問訪問的 。但是要用一定的方式
.使用static可以聲明一個內(nèi)部類, 可以直接在外部調(diào)用
class?Outer{????????//?定義外部類??????private?static?String?info?=?"hello?world"?;????//?定義外部類的私有屬性??????static?class?Inner{?//?使用static定義內(nèi)部類為外部類??????????public?void?print(){????????????????//?定義內(nèi)部類的方法??????????????System.out.println(info)?;??????//?直接訪問外部類的私有屬性??????????}??????};??????public?void?fun(){??????????????????????//?定義外部類的方法??????????new?Inner().print()?;???????????????//?通過內(nèi)部類的實例化對象調(diào)用方法??????}??};??public?class?InnerClassDemo03{??????public?static?void?main(String?args[]){??????????new?Outer.Inner().print()?;?????????????????//?調(diào)用外部類的fun()方法??????}??};
2.不使用statc聲明一個內(nèi)部類 ,使外部調(diào)用
class?Outer{????????//?定義外部類??????private?String?info?=?"hello?world"?;???//?定義外部類的私有屬性??????class?Inner{????//?定義內(nèi)部類??????????public?void?print(){????????????????//?定義內(nèi)部類的方法??????????????System.out.println(info)?;??????//?直接訪問外部類的私有屬性??????????}??????};??????public?void?fun(){??????????????????????//?定義外部類的方法??????????new?Inner().print()?;???????????????//?通過內(nèi)部類的實例化對象調(diào)用方法??????}??};??public?class?InnerClassDemo04{??????public?static?void?main(String?args[]){??????????Outer?out?=?new?Outer()?;???????????//?外部類實例化對象??????????Outer.Inner?in?=?out.new?Inner()?;??//?實例化內(nèi)部類對象??????????in.print()?;????????????????????????//?調(diào)用內(nèi)部類的方法??????}??};
3.在方法中定義內(nèi)部類 ,使外部調(diào)用
class?Outer{????????//?定義外部類??????private?String?info?=?"hello?world"?;???//?定義外部類的私有屬性??????public?void?fun(final?int?temp){????????//?定義外部類的方法??????????class?Inner{????????????????????????//?在方法中定義的內(nèi)部類??????????????public?void?print(){????????????????//?定義內(nèi)部類的方法??????????????????System.out.println("類中的屬性:"?+?info)?;???????//?直接訪問外部類的私有屬性??????????????????System.out.println("方法中的參數(shù):"?+?temp)?;??????????????}??????????};??????????new?Inner().print()?;???????????????//?通過內(nèi)部類的實例化對象調(diào)用方法??????}??};??public?class?InnerClassDemo05{??????public?static?void?main(String?args[]){??????????new?Outer().fun(30)?;???//?調(diào)用外部類的方法??????}??};
竹墨殘香煙花冷 提問者
..我問的是內(nèi)部類可以訪問外部類嗎?不是外部類如何訪問內(nèi)部類
使用static可以聲明一個內(nèi)部類, 可以直接在外部調(diào)用
舉報
課程升級!以終為始告別枯燥,在開發(fā)和重構中體會Java面向對象編程的奧妙
1 回答外部類與內(nèi)部類
1 回答內(nèi)部類與外部類
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2016-06-20
shi是可以訪問訪問的 。但是要用一定的方式
.使用static可以聲明一個內(nèi)部類, 可以直接在外部調(diào)用
class?Outer{????????//?定義外部類??
????private?static?String?info?=?"hello?world"?;????//?定義外部類的私有屬性??
????static?class?Inner{?//?使用static定義內(nèi)部類為外部類??
????????public?void?print(){????????????????//?定義內(nèi)部類的方法??
????????????System.out.println(info)?;??????//?直接訪問外部類的私有屬性??
????????}??
????};??
????public?void?fun(){??????????????????????//?定義外部類的方法??
????????new?Inner().print()?;???????????????//?通過內(nèi)部類的實例化對象調(diào)用方法??
????}??
};??
public?class?InnerClassDemo03{??
????public?static?void?main(String?args[]){??
????????new?Outer.Inner().print()?;?????????????????//?調(diào)用外部類的fun()方法??
????}??
};
2.不使用statc聲明一個內(nèi)部類 ,使外部調(diào)用
class?Outer{????????//?定義外部類??
????private?String?info?=?"hello?world"?;???//?定義外部類的私有屬性??
????class?Inner{????//?定義內(nèi)部類??
????????public?void?print(){????????????????//?定義內(nèi)部類的方法??
????????????System.out.println(info)?;??????//?直接訪問外部類的私有屬性??
????????}??
????};??
????public?void?fun(){??????????????????????//?定義外部類的方法??
????????new?Inner().print()?;???????????????//?通過內(nèi)部類的實例化對象調(diào)用方法??
????}??
};??
public?class?InnerClassDemo04{??
????public?static?void?main(String?args[]){??
????????Outer?out?=?new?Outer()?;???????????//?外部類實例化對象??
????????Outer.Inner?in?=?out.new?Inner()?;??//?實例化內(nèi)部類對象??
????????in.print()?;????????????????????????//?調(diào)用內(nèi)部類的方法??
????}??
};
3.在方法中定義內(nèi)部類 ,使外部調(diào)用
class?Outer{????????//?定義外部類??
????private?String?info?=?"hello?world"?;???//?定義外部類的私有屬性??
????public?void?fun(final?int?temp){????????//?定義外部類的方法??
????????class?Inner{????????????????????????//?在方法中定義的內(nèi)部類??
????????????public?void?print(){????????????????//?定義內(nèi)部類的方法??
????????????????System.out.println("類中的屬性:"?+?info)?;???????//?直接訪問外部類的私有屬性??
????????????????System.out.println("方法中的參數(shù):"?+?temp)?;??
????????????}??
????????};??
????????new?Inner().print()?;???????????????//?通過內(nèi)部類的實例化對象調(diào)用方法??
????}??
};??
public?class?InnerClassDemo05{??
????public?static?void?main(String?args[]){??
????????new?Outer().fun(30)?;???//?調(diào)用外部類的方法??
????}??
};
2016-05-31
..我問的是內(nèi)部類可以訪問外部類嗎?不是外部類如何訪問內(nèi)部類
2016-05-31
使用static可以聲明一個內(nèi)部類, 可以直接在外部調(diào)用