Java 成员内部类

阅读更多

Java的成员内部类仅仅定义在方法体中,生命周期也随着方法的结束而结束。

当定义在静态方法中时,就是静态内部类;定义在成员方法中时,就是成员内部类。

package com.mode;

public class LocalInnerClass {
	private String local = "local";
	public void test()
	{
		String name = "abc";
		final String finalName = "final name";
		//局部变量前面是不可以加权限控制符的,也不能用static修饰。
		//但是可以用final修饰,用来确保这个变量的值不会发生改变。
		//所以如果局部类要访问带修饰的局部变量,只能访问用final修饰的局部变量。但是局部类可以访问外部类的所有成员,包括成员变量。
		//此类为局部类
		//局部类不需要加public,private修饰符,因为这方法执行完 这类就消失了
		class LocalClass{
			
			public void testLocal()
			{
				test2();//可以访问外部类的所有成员变量和成员方法
				System.out.println("The memeber variable is " + local);
				System.out.println("The local variable is " + finalName);
			}
		}
		new LocalClass().testLocal();
	}
	
	public void test2()
	{
		
	}
}

 

你可能感兴趣的:(Java,成员内部类)