[英]Can I override a new instance of a class object?
我不知道它叫什么,但是您可以使用以下方法轻松地覆盖方法:
Apple foo = new Apple(){
public void devour(){
//Devour apple
}
};
您可以使用getClass获得对象的类。
是否可以做这样的事情:
Apple a = new Apple();
Class<? extends Apple> B = a.getClass();
Apple c = new B(){
public void polish(){
//Polish apple
}
};
旁注:之所以问这个问题,是因为我特别想在当前swing UI类中UIManager.getUI(component).getClass()
此代码中由UIManager.getUI(component).getClass()
返回的组件的单个方法。
在第一个代码段中,您将创建Apple
的匿名子类,该子类将覆盖devour()
方法,然后将foo
实例化为该匿名子类的实例。
在第二个示例中,在您的目标中,您不能在该对象已经存在之后更改该对象引用的类/类型。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.