Java中匿名内部类
1. new 类名/接口/抽象类(){
}
例如:
new Interface(){
}
2.匿名内部类
本质:匿名内部类会隐式的继承一个类或者实现一个接口,或者说,匿名内部类是一个继承了该类或者实现了该接口的子类匿名对象。
代码:
public class Test02{
public static void main(String[] args){
Teacher jt = new JavaTeacher();
jt.teach();
//创建的不是接口本身,new Teach()后面的大括号就是一个匿名类实现了Teach接口
Teacher jt1 = new Teacher(){
public void teach(){
System.out.println("内部老师正在教Java。");
}
};
jt1.teach();
new Teacher(){
public void teach(){
System.out.println("内部老师正在教Java。");
}
}.teach();
}
}
interface Teacher{
public void teach();
}
class JavaTeacher implements Teacher{
public void teach(){
System.out.println("Java老师正在教Java。");
}
}