标签:java
//外部类 class Outer { String name="我是外部类成员变量"; void outerMethod() //在外部类定义一个成员方法,实现创建一个内部类实例并调用其成员方法 { inner in=new inner(); in.dispaly(); } //内部类 class inner { void display() { System.out.println("Method of inner class print 'name'="+name); } } } /*-------------------------------------------*/ public class innerClassDemo { public static void main(String[] args) { Outer outer = new Outer(); outer.outerMethod(); } }
//外部类 class Outer { private int number=100; public class Inner { private int number=200; void print(int number) { System.out.println("I am innerClass"+"\n"+"参数number="+number+"\n"+"内部类成员 number="+this.number+"\n"+"外部类成员number="+Outer.this.number); } } } //外部以外的类 public class InnerClassDemo { public static void main(String[] string) { Outer outer = new Outer(); //实例化一个Outer对象 Outer.Inner inner=outer.new Inner(); //实例化一个Inner对象 inner.print(300);//调用外部类的成员方法 } }
//外部类 class Outer { private String str="姚明"; public void outerPrint() { int i=10; //内部类 class Inner { void dispaly(final int number) { System.out.println(str); System.out.println(number); //System.out.println(i);//这条语句是错误的,方法中的内部类不能访问方法的非final变量 } } //实例化内部类并调用其成员方法 Inner inner = new Inner(); inner.dispaly(11); } } public class InnerDemo { public static void main(String[] args) { Outer outer = new Outer(); outer.outerPrint(); } }
//类A abstract class A { abstract void display(); } //Outer类,在其main方法中定义一个内部类,该内部类继承于类A public class Outer { //main成员方法 public static void main(String[] args) { //内部类 class Inner extends A { void display() { System.out.println("I am Inner Class."); } } new Outer().callInner(new Inner()); //创建Outer实例并调用其成员方法,方法参数为内部类对象 } //callInner成员方法 public void callInner(A a) { a.display(); } }
//类A abstract class A { abstract void display(); //声明一个抽象类 } //外部类 public class Outer { //main成员方法 public static void main(String[] args) { new Outer().callInner(new A(){ void display() { System.out.println("I am childclass of A,but I have not name -'Inner'"); } }); } //callInner成员方法 public void callInner(A a) { a.display(); } }
标签:java
原文地址:http://blog.csdn.net/u012637501/article/details/43230627