1、通过抽象类
package com.sunj.test;
abstract class Person{
public abstract void sleep();
}
public class AnonymousClassDemo {
public static void main(String[] args) {
Person p=new Person() {
@Override
public void sleep() {
System.out.println("匿名类实现睡觉的方法");
}
};
p.sleep();
}
}
2、通过接口
public interface Student {
public void play();
}
public class AnonymousInnerClassDemo02 {
public static void main(String[] args) {
Student s=new Student() {
@Override
public void play() {
System.out.println("学生可以玩耍");
}
};
s.play();
}
}
注意:如果不通过匿名内部类实现,则需要通过一个中间类继承抽象类或者实现接口实现抽象方法,然后再使用已经实现的方法。
通过以上分析,从而解决了“Anonymous Inner Class(匿名内部类)是否可以extends(继承)其他类,是否可以implements(实现)接口?”这个问题,可以继承和实现,但是不是通过extends和implements这两个关键字。
如果对你有帮助,那么很乐意,如果哪里有什么问题,希望可以指出来。