匿名的对象类型是什么 class
What is the object type of an anonymous class
请看下面的Javaclass:
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 个 class 如上所示。如果我要执行以下操作(匿名 class)
new B() {
@Override
public void doProcess(){
System.out.println("Process from Anonymous class");
}
}
我是在创建 B 的新子 class 吗?还是B的一个实例?
我知道我可以将匿名实现分配给 B 或 A。我不确定的是创建的匿名 class 实例。更多关于 Java 做什么的好奇,而不是出于任何实际目的。我不知道如何让这个匿名内部 class 的 class 对象使用一些反射 API 并自己弄清楚。
您正在创建 class B
的匿名子 class 的实例。
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
是 class B 所在的包。
请看下面的Javaclass:
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 个 class 如上所示。如果我要执行以下操作(匿名 class)
new B() {
@Override
public void doProcess(){
System.out.println("Process from Anonymous class");
}
}
我是在创建 B 的新子 class 吗?还是B的一个实例?
我知道我可以将匿名实现分配给 B 或 A。我不确定的是创建的匿名 class 实例。更多关于 Java 做什么的好奇,而不是出于任何实际目的。我不知道如何让这个匿名内部 class 的 class 对象使用一些反射 API 并自己弄清楚。
您正在创建 class B
的匿名子 class 的实例。
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
是 class B 所在的包。