如何解决带有 2 个参数的构造函数实际上有 3
在运行时使用反射查询类的Constructor信息时。
public class amongUs {
...
...
...
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.PARAMETER,ElementType.METHOD})
@interface Message {
}
public enum Colors {RED,YELLOW,GREEN,BLACK,WHITE,BLUE,CYAN,PURPLE,VELVET,BROWN,ORANGE
};
public class Player {
}
public class pla extends Player {
String color;
String message = "im not sus";
@Inject
public pla(@Message Integer x,@Message String wut) {
color = (Colors.values()[x]).name();
message=wut;
}
}
...
...
}
但是,当我查看“pla”的构造函数时,它显示它有 3 个参数。
为什么会发生这种情况,我该如何解决?
解决方法
内部类被编译为独立的类。 Java 透明地传递对外部类的实例的引用作为内部类的构造函数的第一个参数。这提供了对外部类实例成员和内部类方法的访问。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。