-5

例如,假设发生这种情况:

DiscountSale discount = new DiscountSale();

然后我这样做:

Sale discount2 = discount;

Sale是超类,DiscountSale也是子类。

就从 Sale 或 DiscountSale 类访问哪些方法定义而言,这究竟做了什么?

我知道它引用了内存中的同一个对象,但还有什么?

4

1 回答 1

-1

您现在有 2 个相同对象的引用。使任一引用为空都不会允许 gc 仍从堆中清除对象。您需要使两个(一般来说,全部)引用都为空。

于 2013-03-28T10:15:05.573 回答