匿名内部类的语法结构
匿名内部类主要是针对那些不能直接创建对象的抽象类和接口而来
new 类名或接口名(){
重写方法;
};
实例
public interface Body extends Mammal
{
class Heart
{
public void work()
{
System.out.println("is beating");
}
}
class A{
}
Object o = new Object() {
};
Object object = new Object() {
};
static Mammal mammal = new Mammal() {
public void move() {
System.out.println("moving by fins");
}
};
public static void main(String[] args) {
mammal.move();
new Mammal() {
public void move() {
System.out.println("moving by fins");
}
}.move();
new Mammal() {
public void move() {
System.out.println("moving by fins");
}
public void eat() {
System.out.println("eating by mouth");
}
}.eat();
}
}
匿名类表达式包含以下内部分:
- 操作符
- 一个要实现的接口或要继承的类
- 一对括号
- 一段被"{}"括起来类声明主体
- 末尾的";"号