Java内部类(InnerClass)详解

文章作者 100test 发表时间 2007:07:12 11:43:52
来源 100Test.Com百考试题网


简单的说,内部(inner)类指那些类定义代码被置于其它类定义中的类;而对于一般的、类定义代码不嵌套在其它类定义中的类,称为顶层(top-level)类。对于一个内部类,包含其定义代码的类称为它的外部(outer)类。
1 Static member class(静态成员类)
类声明中包含“static”关键字的内部类。如以下示例代码,
Inner1/Inner2/Inner3/Inner4就是Outer的四个静态成员类。静态成员类的使用方式与一般顶层类的使用方式基本相同。


1.1 静态成员类特性
  • 静态成员类可访问外部类的任一静态字段或静态方法
  • 像静态方法或静态字段一样,静态成员类有public/private/default权限修饰符
1.2 静态成员类约束
  • 静态成员类不能与外部类重名
  • 像外部类的静态方法一样,不能直接访问外部类的实例字段和实例方法
  • 静态成员类只能定义于外部类的顶层代码或外部类其它静态成员类的顶层代码中(嵌套定义);不能定义于外部类的某个函数中。
1.3 新增语法
如示例代码所示,可以以“OuterClass.InnerClass”的方式来引用某个内部类。
1.4 什么时候使用静态成员类
B为A的辅助类,且只为A所用时,可将B定义为A的静态成员类。例如JDK中的LinkedList类就有Entry静态成员类:
显然,Entry用来表示LinkedList中的一个结点,只被LinkedList自身使用。
src="/java/js/wxgg_java.js">

相关文章


如何开发、调试和测试EJB3APP?
在JAVA文件中获取该项目的相对路径
Java内部类(InnerClass)详解
关于java基本数据类型之间的转换
Java执行外部命令,并把结果回显到控制台
JSP如何保存用户上次登录时间
Java程序多进程运行模式的实例分析
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛