???Java??????????
???????????? ???????[ 2013/4/24 9:59:07 ] ????????
????1??????????
???????????????????????????????????????
???????? OuterClassName.InnerClassName inner=new Ouer().new Inner();
??????????????.new ????????????private inner class ?????????????????????private?????private?????????default??protected??public???????????
????????? ?????????get InnerInstance()
????????????????????????????????г?????????
????????????????????????????????????????????????????private?????private?????private??????
????2???????????????
???????棬????????????????SamePackage.java?????????Out????????????
????SamePackage.java
package com.zj.main;
public class SamePackage {
public static void main(String[] args) {
// create an outer object
Out out = new Out();
//create a private inner object by 'new'
//Out.PrivateIn privateIn=out.new PrivateIn();
//->error: Out.PrivateIn is not visible.
// create a default inner object by 'new'
Out.DefaultIn defaultIn = out.new DefaultIn();
//defaultIn.private_arg=0;->error:not visible
defaultIn.default_arg = 0;
//defaultIn.private_method();->error:not visible
defaultIn.default_method();
// create a private inner object by 'out's method'
//Out.PrivateIn privateIn2 = out.getPrivateIn();
//->error:Out.PrivateIn is not visible through out.getPrivateIn() is visible.
// create a private inner object by 'out's method'??
// but use Interface reference to handle it
InMethod privateIn=out.getPrivateIn();
privateIn.public_method();
}
}
??????????OuterClassName.InnerClassName inner=new Ouer().new Inner();
??????÷?????????private ??????????????ò?????????????
//create a private inner object by 'new'
//Out.PrivateIn privateIn=out.new PrivateIn();
//->error: Out.PrivateIn is not visible.
????????????????????default????????????????????????????????private?????private??????????protected??public???????????
????????????????????get InnerInstance()
??????????????????????getInnerInstance()????????????ò???private???????????????????????????private???????????
// create a private inner object by 'out's method'
//Out.PrivateIn privateIn2 = out.getPrivateIn();
//->error:Out.PrivateIn is not visible through out.getPrivateIn() is visible.
??????
???·???
??????????????????
2023/3/23 14:23:39???д?ò??????????
2023/3/22 16:17:39????????????????????Щ??
2022/6/14 16:14:27??????????????????????????
2021/10/18 15:37:44???????????????
2021/9/17 15:19:29???·???????·
2021/9/14 15:42:25?????????????
2021/5/28 17:25:47??????APP??????????
2021/5/8 17:01:11