我是Java新手,遇到了一些问题。我希望一个班级成为另一个班级。很难用抽象的方式来解释它,所以我举一个例子。
public class WorldGuard extends WorldGuardPlugin {
public WorldGuard(Plugin parent) {
WorldGuardPlugin plugin = parent.getServer().getPluginManager().getPlugin("WorldGuard")
// make plugin the actual class
}
}
WorldGuard
在这里应该像某种包装器。构造时,它会获得一个参数parent
,并在此基础上找到WorldGuardPlugin
的实例。该类现在应该成为该实例。在JavaScript中很简单,我只返回实例,但在Java中无法做到这一点。
最佳答案
我不太确定您要做什么。一个班级不能“成为另一个班级”。但是也许您的问题只是当您应该使用普通函数时尝试使用构造函数。也许您想做的是这样的:
public class WorldGuard extends WorldGuardPlugin
{
public static WorldGuard getFromPlugin(Plugin parent)
{
return (WorldGuard) parent.getServer().getPluginManager().getPlugin("WorldGuard");
}
}
那将通过父对象获取该对象,并将其作为WorldGuard对象返回。