Java 基于继承的类型重新初始化变量
有没有一种方法可以使用从原始类型扩展而来的类型“重新初始化”变量Java 基于继承的类型重新初始化变量,java,variables,types,initialization,Java,Variables,Types,Initialization,有没有一种方法可以使用从原始类型扩展而来的类型“重新初始化”变量 TileEntity te = world.getBlockTileEntity(x, y, z); if (te instanceof TileEntityMonitorStorageFluid) { TileEntityMonitorStorageFluid monitorTE = (TileEntityMonitorStorageFluid) te; } 在这段代码中,我必须创建一个新的var,这是唯一的方法吗?或
TileEntity te = world.getBlockTileEntity(x, y, z);
if (te instanceof TileEntityMonitorStorageFluid)
{
TileEntityMonitorStorageFluid monitorTE = (TileEntityMonitorStorageFluid) te;
}
在这段代码中,我必须创建一个新的var,这是唯一的方法吗?或者我可以“回收”te var吗?始终强制转换“te”是不好的…不,不能更改现有变量的类型。
另一方面,我不知道你为什么要这么做。创建一个新的引用似乎更清晰、更容易,相关的成本也很低。如果我当时理解你的问题:不,
te
将始终是TileEntity
类型。如果您想将其用作TileEntityMonitorStorageFluid
,则必须每次强制转换它,或创建一个新的变量monitorTE
。事实上,成本可能为零,因为即使在字节码级别,位置也可能在上次访问后重新使用。确定,谢谢:D我会在限制结束后接受你的答案(“你可以在3分钟内接受答案”)