我正在尝试从java中的封闭API(来自jar)向类中添加一些功能。
public class NewPlayer extends OldPlayer {
public int NewFunction(){
return 0;
}
}
//instance.GetPlayer() return an OldPlayer object, so I get an error, this function cannot be changed
NewPlayer p = instance.GetPlayer();
如果我只是将instance.GetPlayer()
转换为NewPlayer
,则会进行编译。
NewPlayer p = (NewPlayer)instance.GetPlayer();
这是处理此问题的正确方法吗?有更好的方法吗?是扩展封闭源类的功能的正确方法吗?
Tldr:我想从jar库的封闭源对象中为类添加功能