JAVA相关 抽象类和接口不是不能直接实例化吗,那在匿名内部类中为什么就可以直接用new来实例化了
JAVA相关抽象类和接口不是不能直接实例化吗,那在匿名内部类中为什么就可以直接用new来实例化了呢?是不是匿名内部类是例外啊?比如过滤器就是newfilenamefilt...
JAVA相关
抽象类和接口不是不能直接实例化吗,那在匿名内部类中为什么就可以直接用new来实例化了呢?是不是匿名内部类是例外啊?
比如过滤器就是new filenamefilter(){} 展开
抽象类和接口不是不能直接实例化吗,那在匿名内部类中为什么就可以直接用new来实例化了呢?是不是匿名内部类是例外啊?
比如过滤器就是new filenamefilter(){} 展开
2个回答
展开全部
new filenamefilter()是创建一个继承自filenamefilter的匿名类对象,通过new表达式返回的引用自动向上转型为对filenamefilter的引用。因为匿名类本身无名,也就不存在构造方法,需要显式调用父类的构造方法,并重写父类的方法。
更多追问追答
追问
为什么说无名就不存在构造方法呢
追答
其实应该改为 “因为匿名类不存在构造方法,需要显式调用父类的构造方法,并重写父类的方法”
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询