匿名内部类的实现
如果接口的实现类只需要使用唯一一次,可以使用匿名内部类.
匿名内部类实现的格式:
接口名称 对象名=new 接口名称(){
//覆盖重写的抽象方法
};
接口:
public interface MyInterface {
public abstract void method();
}
匿名内部类实现:
public class DemoMain {
public static void main(String[] args) {
/**
* 接口名称 对象名=new 接口名称(){
* //覆盖重写的抽象方法
* };
*/
//使用匿名内部类
MyInterface obj=new MyInterface() {
@Override
public void method() {
System.out.println("匿名内部类实现了方法");
}
};
obj.method();
}
}
匿名内部类中的匿名对象:`
public class DemoMain {
public static void main(String[] args) {
new MyInterface(){
@Override
public void method() {
}
}.method();
}
}
注意:
1.匿名内部类 在创建对象时只能使用唯一一次,如果希望多次创建对象使用,而且类的内容一致的话,那么就必须使用单独的实现类了.
2.匿名对象 在调用方法时只能使用一次,如果希望同一个对象调用多次方法,那么必须给对象起一个名字
3.匿名内部类是省略了实现类名称而匿名对象是省略了对象名称