24.内部类
1.概述
2.成员内部类调用方法:
public class OutClass { public String name = "十点多"; public class InnerClass { public String name2 = name; } public void show() { InnerClass innerClass = new InnerClass(); System.out.println(innerClass.name2); } }
public class Demo { public static void main(String[] args) { // 访问内部类方法1 OutClass.InnerClass innerClass=new OutClass().new InnerClass(); // 访问内部类方法2 OutClass outClass = new OutClass(); outClass.show(); } }
3.局部内部类
public class InnerTest { private int num = 10; public void show() { class Inner { public void methord() { System.out.println(num); } } Inner inner = new Inner(); inner.methord(); } }
4.匿名内部类
public class Out { public void methord() { new Inner() { @Override public void show() { System.out.println("匿名内部类"); } }.show(); Inner inner = new Inner() { @Override public void show() { System.out.println("匿名内部类"); } }; inner.show(); } }
5.匿名内部类开发中的使用
补充:
上面图片中两种写法效果相同,其中红色方法是内部类写法
内部类调试
myeclipse 编辑java 代码是内部类 断点无法进入, 调试时将内部类方法的第一行断点可进入内部类调用的方法