一、静态内部类
在一般【内部类】前面 用 static 修饰,类中的静态内部类,
形如:
public class A {
static class StaticInnerClassA{
static void Method(){
// ...
}
}
}
二、注意事项
1)static 不能直接修饰类,即没有 静态类 ,public static class A (){ }
2)静态内部类,只能包含静态成员和静态方法
3)静态内部类中的静态方法,只能访问外部静态成员 或 静态方法
4)静态内部类,不依赖外部类而存在,即不用 new
三、主要用途
应用场景少,目前主要应用于 代码测试,一个Test类中,可以一次测试A、B、C类中的方法,传统方法是一个类一个类测试功能。
四、示例代码
A.java
package static_inner_class;
public class A {
static class StaticInnerClassA{
static void call(){
new A().add();
}
}
public void add(){
System.out.println("执行A类 add()方法....");
}
}
B.java
package static_inner_class;
public class B {
static class StaticInnerClassB{
static void call(){
new B().delete();
}
}
public void delete(){
System.out.println("执行B类 delete()方法....");
}
}
TestAll.java
package static_inner_class;
public class TestAll {
public static void main(String[] args) {
// 一次性 测试 A、B 两个类中的方法
A.StaticInnerClassA.call();
B.StaticInnerClassB.call();
/*
输出结果:
执行A类 add()方法....
执行B类 delete()方法....
*/
}
}
参考:http://blog.sina.com.cn/s/blog_605f5b4f0100zbps.html#cmt_2792594