假设我有一个String
对象引用,并将它分配给Object
引用。这将隐式执行widening
。在Java中加宽后缩小
Object o = "Hello World"
现在我们不能用在任何o
方法String
。我的问题是,由于这种类型转换会导致数据丢失,就像在C++中那样,如果我们将float
转换成int
,数据将会丢失。
如果我投o
回到String
明确我将能够访问实际String
。
在Java中有很多方法,其中有Object
类型变量作为参数。所以我可以将任何类型的对象ref传递给此参数。我可以通过显式缩小这个对象来将它转换回原始的吗?