《java中内部类在局部时,访问权限》

原创 2012年03月26日 22:59:20
/*
内部类定义在局部时,
1,不可以被成员修饰符修饰
2,可以直接访问外部类中的成员,因为还持有外部类中的引用。
	但是不可以访问它所在的局部中的变量。只能访问被final修饰的局部变量。
*/
class Outer
{
	void method(final int a)
	{
		final int y = 4;
		class Inner
		{
			void function()
			{
				System.out.println(a);
			}

		}
		new Inner().function();
	}
}

class Inner 
{
	public static void main(String[] args) 
	{
		new Outer().method(7);
		new Outer().method(8);

		Outer out = new Outer();
		out.method(7);
		out.method(8);
	}
}



Outer out = new Outer();
		out.method(7);
		out.method(8);

这个写法有些人看了可能会很奇怪,这样子能编译通过么?

被final修饰之后不是不能改变其值了么?

的确是这样。

但是,作为一个函数的参数,或者说在一个函数中。

他是在栈内存的,随着函数执行完,他的内存也会释放。

所以,这样子是不是有错误的!

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

java中内部类的创建四种情况,三种方式,及内部数据访问权限

内部类和外部类的关系,及内部静态类的数据访问权限,声明方式。 第一种,在外部类内部声明使用内部类,内部类的类型为static和非 static类型,内部类数据类型为private,protected,...

我的第一篇博客,献给黑马啦。(知识点:构造体,内部类访问权限)

这个时候,我看完了java基础知识,

黑马程序员——学习日志6面向对象(多态,内部类,异常,访问权限)

------- android培训、java培训、期待与您交流! ----------  ------- an...

关键字+静态+访问权限+内部类

1.关键字 (this,super,static,void,访问权限,final,break,continue,instance of) ①this 属性:当局部变量与全局变量同名时,用来区分全局...

c#内部类访问权限

内部类,顾名思义是在一个类里面再定义一个类,这时候涉及到访问外部类和内部类的字段权限的问题。 1:首先是内部类的类访问权限,有public,protected和private。内部类的类访问权限只是针...

Java中局部内部类可以访问它所在方法中定义的final修饰的局部变量的合理解释

转自:http://lpqsun-126-com.iteye.com/blog/1175733 标题有点长,可能有点语病,先别管那么多! 首先看下面的这段代码: Java代码  ...

Java匿名内部类访问外部类局部变量,为何需被标志为final?

原文地址 http://www.jianshu.com/p/609ca1c584ac 对于Java语言中的final使用,大家应该很熟悉,可以修饰类,表示不可继承;可以修饰方法,表...

Java—内部类(普通,静态,局部,匿名)

昨天晚上本来是拉着学长给我讲RecycleView如何实现加载更多效果的,结果——————————————————————————————————就扯到了内部类学长昨天给我讲了好多好多 自己回去也写...

java 局部内部类

局部内部类 学习方法: 局部内部类分为方法内部类和作用域内部类,方法内部类就是直接定义在方法中的内部类,作用域内部类是定义在某个作用域内的内部类,比如if结构中,while结构中等等。方法内部...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)