基础知识--java局部内部类

文章作者 100test 发表时间 2007:10:15 12:41:06
来源 100Test.Com百考试题网


在方法中定义的内部类称为局部内部类。与局部变量类似,局部内部类不能有访问说明符,因为它不是外围类的一部分,但是它可以访问当前代码块内的常量,和此外围类所有的成员。

publicclass Outer {
privateints = 100.
privateintout_i = 1.

publicvoid f(finalint k) {
finalint s = 200.
int i = 1.
finalint j = 10.

//定义在方法内部
class Inner {
ints = 300.// 可以定义与外部类同名的变量

// static int m = 20.//不可以定义静态变量
Inner(int k) {
inner_f(k).
}

intinner_i = 100.

voidinner_f(int k) {
//如果内部类没有与外部类同名的变量,在内部类中可以直接访问外部类的实例变量
System.out.println(out_i).
//可以访问外部类的局部变量(即方法内的变量),但是变量必须是final的
System.out.println(j).
//System.out.println(i).
//如果内部类中有与外部类同名的变量,直接用变量名访问的是内部类的变量
System.out.println(s).
//用this.变量名访问的也是内部类变量
System.out.println(this.s).
//用外部类名.this.内部类变量名访问的是外部类变量
System.out.println(Outer.this.s).
}
}
new Inner(k).
}

publicstaticvoid main(String[] args) {
// 访问局部内部类必须先有外部类对象
Outer out = new Outer().
out.f(3).
}
}


相关文章


java调用ipmsg的源代码
JAVA匿名内部类(fromthinkinginjava3th)
java静态内部类(嵌套类)
基础知识--JAVA成员内部类
基础知识--java局部内部类
Java不允许goto跳转
synchronized解决多线程共享数据同步问题
Struts框架基础学习
java分布式多播技术开发
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛