java内部类(InnerClass)详解.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java内部类(InnerClass)详解.doc

Java内部类(Inner Class)详解 简单的说,内部(inner)类指那些类定义代码被置于其它类定义中的类;而对于一般的、类定义代码不嵌套在其它类定义中的类,称为顶层(top-level)类。对于一个内部类,包含其定义代码的类称为它的外部(outer)类。 1 Static member class(静态成员类) 类声明中包含“static”关键字的内部类。如以下示例代码, Inner1/Inner2/Inner3/Inner4就是Outer的四个静态成员类。静态成员类的使用方式与一般顶层类的使用方式基本相同。 public class Outer{ //just like static method, static member class has public/private/default access privilege levels //access privilege level: public public static class Inner1 { public Inner1() { //Static member inner class can access static method of outer class staticMethod(); //Compile error: static member inner class can not access instance method of outer class //instanceMethod(); } } //access privilege level: default static class Inner2 { } //access privilege level: private private static class Inner3 { //define a nested inner class in another inner class public static class Inner4 { } } private static void staticMethod() { //cannot define an inner class in a method /*public static class Inner4() { }*/ } private void instanceMethod() { //private static member class can be accessed only in its outer class definition scope Inner3 inner3 = new Inner3(); //how to use nested inner class Inner3.Inner4 inner4 = new Inner3.Inner4(); } } class Test { Outer.Inner1 inner1 = new Outer.Inner1(); //Test and Outer are in the same package, so Inner2 can be accessed here Outer.Inner2 inner2 = new Outer.Inner2(); //Compile error: Inner3 cannot be accessed here //Outer.Inner3 inner3 = new Outer.Inner3(); } 1.1 静态成员类特性 静态成员类可访问外部类的任一静态字段或静态方法 像静态方法或静态字段一样,静态成员类有public/private/default权限修饰符 1.2 静态成员类约束 静态成员类不能与外部类重名 像外部类的静态方法一样,不能直接访问外部类的实例字段和实例方法 静态成员类只能定义于外部类的顶层代码或外部类其它静态成员类的顶层代码中(嵌套定义);不能定义于外部类的某个函数中。 1.3 新增语法 如示例代码所示,可以以“OuterClass.I

文档评论(0)

docinppt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档