赞
踩
1. 成员内部类(普通内部类)
public class Outer {
public class inner{
}
}
package oop.Demo09; public class Outer { public void test1(){ } private void test2(){ } public static void test3(){ } public class inner{ public void test(){ test1(); test2(); test3(); } } }
package oop.Demo09; public class Outer { public int id = 10; public void run1(){ System.out.println("这是外部类的方法!"); } public class inner{ public void run2(){ System.out.println("这是内部类的方法!"); } public void GetId(){ System.out.println("外部类中的id:"+id); } //run1(); 报错 public void run(){ Outer.this.run1(); } } }
package oop.Demo09; public class Application { public static void main(String[] args) { Outer outer = new Outer(); outer.run1(); //这是外部类的方法! Outer.inner inner = outer.new inner();//实例化成员内部类 //调用成员内部类的方法时直接用inner inner.run2(); //这是内部类的方法! inner.GetId(); //外部类中的id:10 inner.run(); //这是外部类的方法! } }
2. 局部内部类
代码示例:
package oop.Demo09;
public class Student {
public static void study(){
System.out.println("学生正在学习");
//局部内部类
final class StudentSay{
public void say() {
System.out.println("学生正在说话");
}
}
}
}
package oop.Demo09;
public class Application {
public static void main(String[] args) {
Student student = new Student();
student.study(); //学生正在学习
}
}
3. 静态内部类
package oop.Demo09; public class Outer { public static int id = 10; public static void run1(){ System.out.println("这是外部类的方法!"); } static class Inner{ public void run2(){ System.out.println("这是内部类的方法!"); } public void GetId(){ System.out.println("外部类中的id:"+id); } //run1(); 报错 public void run(){ Outer.run1(); } } }
package oop.Demo09; public class Application { public static void main(String[] args) { Outer outer = new Outer(); outer.run1(); //这是外部类的方法! //静态内部类实例化 Outer.Inner inner = new Outer.Inner(); //调用成员内部类的方法时直接用inner inner.run2(); //这是内部类的方法! inner.GetId(); //外部类中的id:10 inner.run(); //这是外部类的方法! } }
4. 匿名内部类
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。