请查看下面的Java类:
class A {
public void doProcess(){
System.out.println("Process from A class!");
}
}
class B extends A {
@Override
public void doProcess(){
System.out.println("Process from B class!");
}
}
我有2个课程,如上所示.如果我要做以下(匿名课程)
new B() {
@Override
public void doProcess(){
System.out.println("Process from Anonymous class");
}
}
我是否在创建B的新子类?或者它是B的一个实例?
我知道我可以将匿名实现分配给B或A.我不确定是在创建的匿名类的实例上.更多关于Java所做的事情,而不是任何实际目的.我不知道如何让这个匿名内部类的类对象使用一些反射API并自己解决.
解决方法:
您正在创建B类的匿名子类的实例.
B b = new B() {
@Override
public void doProcess(){
System.out.println("Process from Anonymous class");
}
}
System.out.println (b.getClass ().getSuperclass ());
这将打印
class some.package.B
其中some.package是B类所在的包.
标签:java,anonymous-class 来源: https://codeday.me/bug/20190823/1697918.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。