内部类定义方法:
class A
{
class B
{
}
}
编译后将生成:A.class 和 A$B.class
内部类B可以使用外部类A的成员变量和成员属性
生成内部类对象: 先生成外部类对象.再生成内部类
class Test
{
public static void main(String args[]){
A a = new A();
A.B b = new A().new B(); // 或 a.new B();
}
}
匿名内部类:没有名字
interface A
{
public void dowork();
}
class B
{
public void dowork(A a){
a.dowork();
}
}
class Test
{
public static void main(String args[]){
B b =new B();
b.dowork(new A(){
public void dowork(){
System.out.println("匿名内部类");
};
});
}
}
时间: 2024-12-29 23:35:23