匿名内部类
Posted wurengen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了匿名内部类相关的知识,希望对你有一定的参考价值。
什么是匿名内部类?
匿名内部类 :是内部类的简化写法。它的本质是一个 带具体实现的 父类或者父接口的 匿名的 子类对象。开发中,最常用到的内部类就是匿名内部类了。
前提
- 匿名内部类必须继承一个父类或者实现一个父接口。
格式
使用场景:
如果接口的实现类(或者父类的子类)只需要使用唯一次,那么这种情况下就匿名内部类
格式解析:
- new 代表创建对象的动作
- 接口名称就是匿名内部类需要实现哪个接口
- {....}这才是匿名内部类的内容。(匿名内部类)
注意事项:
- 匿名内部类,在创建对象的时候只能使用唯一一次
- 匿名对象,在调用方法的时候,只能调用唯一一次。
- 匿名内部类是省去了(实现类或者子类),但是匿名对象是省去了对象名称
- 强调:匿名内部类和匿名方法不是一回事
代码举例:
定义接口:
package deno04; public interface MyInterface { //抽象方法 public abstract void eat(); }
创建匿名内部类
package deno04; public class MyTest { public static void main(String[] args) { // 创建匿名内部类,将匿名对象传递给 method方法中 method(new MyInterface() { @Override public void eat() { System.out.println("我吃骨头"); } }); } public static void method(MyInterface myInterface) { //拿到对象地址值,操作匿名内部类中的成员 myInterface.eat(); } }
执行结果:
以上是关于匿名内部类的主要内容,如果未能解决你的问题,请参考以下文章