虽然我不是在c#中使用out参数的忠实粉丝,但我想知道为什么Java选择不在其语言语法中包含它.是否有任何特殊原因或者因为一个人可以简单地将一个对象作为参数类型传递?
可能是因为设计师觉得不需要允许多种方式返回对象.
可以询问有关代表,通用等的相同问题.
但事实是C#设计师从Java的错误/不便中吸取了教训,这就是为什么我说过很多人认为C#是更好的语言.
Java被设计成一种非常简单的语言,语法非常简单 - 一种"Spartan OO编程语言",与C++形成鲜明对比,其丰富的功能几乎没有人完全了解和理解(包括编译器实现者).
基本上,功能被省略,除非它们被认为是绝对必要的.
一方面,实现了目标 - 很少有领域的Java行为难以理解或预测.
另一方面,缺少的功能必须解决,这导致Java的诽谤冗长.C#的设计者试图在此基础上进行构建.
但是,我个人不会指出参数是一个很大的损失.