我不想在这里要求特别的知识,但是将变量赋值和将值用作方法参数之间有一个明显的区别:在前一种情况下,无论方法是否重载,都只有一个 可能的 目标。
基本上,这意味着您不必担心类型推断和重载/转换之间的相互作用: 仅 当您知道自己感兴趣的唯一目标类型时,才进行推断。
这 是 刚刚虽然猜测。我总是发现Java的类型推断很有趣-它的工作方式与C#3完全相反,在C#3中,您可以推断 变量的 类型(只要它是局部变量)。
编辑:我相信相关的JLS节是15.12.2.8:
如果方法结果发生在将进行赋值转换(第5.2节)为类型S的上下文中,则使R为方法的声明结果类型[…]
基本上,“分配转换”位很重要。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)