首页 > 代码库 > 内部类的 代码测试

内部类的 代码测试

public class text {

	public static void main(String[] args) {
		//其他类中  内部类的 调用  内部类对象的建立
//		new Outer().function();
		Outer.Inner in = new Outer().new Inner();
		in.print();
		new Outer().method();
//		Outer.Inner in = new Outer.Inner();//当Inner为静态的时候 调用方法

	}

}
class Outer{
	String s = "成员变量";
	public void function(){
		new Inner().print();
//		new Inner2().sop();//不可以访问 局部位置上的 内部类  局部变量 的作用域只在局部
	}
	//成员位置的 内部类  可视为 成员 能够被 成员修饰符修饰
	class Inner{
		String s = "121212";
		public void print(){
			System.out.println("成员位置的内部类 方法被调用、、");
		}
	}
	public void method(){
		final String s = "局部变量";
//		new Inner2().sop();//在局部 也无法访问 局部位子上的 内部类  局部位子上的内部类中的方法 成员 作用于该局部内部类 无法在外部调用
		class Inner2{
			public void sop() {
				System.out.println("局部位置的 内部类 方法被调用");
				System.out.println("访问局部变量:"+s);//s默认为 局部变量
				System.out.println("访问waibulei的同名变量:"+Outer.this.s);
			}
		}
		new Inner2().sop();//在定义好 局部位置的内部类后 才可以通过建立内部类对象 调用其成员
	}
}


本文出自 “要么拼命,要么滚回去!” 博客,请务必保留此出处http://jiangzuun2014.blog.51cto.com/8732469/1533202