匿名内部类
1基于abstract抽象类的匿名类
package com.qfedu.c_anomou;
public class Demo1 {
public static void main(String[] args) {
TypeA typeA = new TypeA();
typeA.test();
AbstractType at = new AbstractType() {
@Override
public void test() {
System.out.println("匿名内部类,调用的方法");
}
};
at.test();
testInnerType(new AbstractType() {
@Override
public void test() {
System.out.println("匿名内部类,可以作为方法的参数直接传入");
}
});
}
public static void testInnerType(AbstractType at) {
at.test();
}
}
2.基于接口的匿名内部类
package com.qfedu.d_anomou;
public class Demoq1 {
public static void main(String[] args) {
A a = new A() {
@Override
public void test() {
System.out.println("接口的匿名内部类");
}
};
a.test();
testInner(new A() {
@Override
public void test() {
System.out.println("我是匿名内部类的参数!!!");
}
});
}
public static void testInner(A a) {
a.test();
}
}