这两个词一直困在我的脑海里。它们在逻辑上是相同还是完全不同?例如,在Java书中: Liang编程简介,他说:
您可以使用泛型类而不指定类似的具体类型 这样:
Int16(i)
与
大致相同
GenericStack stack = new GenericStack(); // raw type
答案 0 :(得分:1)
有很多层次的平等。通常他们用像#34; equal"这样的词来指定。或"等同于"。这些词的意思究竟取决于语境,但通常平等意味着等同,但不是相反。
例如,给定两段代码 A 和 B ,我们可以说 A 和 B 如果它们由完全相同的字符组成,则相等,如果我们总是可以用 B 替换 A ,反之亦然,而不改变其行为程序。如果我们这样做,
int i;
i = 10;
和
int i = 10;
不相等但等同。
您的报价中的两个代码段称为"大致相当于"作者。 “"大致"表明它们根本不相同。事实上:
GenericStack stack = new GenericStack();
GenericStack<String> stack2 = stack;
编译(带警告),而
GenericStack<Object> stack = new GenericStack<Object>();
GenericStack<String> stack2 = stack;
没有。
作者的意思是&#34;大致相当于&#34;是原始类型在许多(但不是全部)情况下的行为类似于GenericStack<Object>
。特别是,您可以在其中放置任何对象。