我一直试图理解在 Java和C#使用“价格”以及两者之间的区别(如果有的话)。 我就SO问题提出了一系列问题,一些答复似乎混淆了这一问题,而不是澄清问题。 一些答复(和一些管理文件)似乎提供了相互矛盾的陈述。 来自SO
and from MS: http://msdn.microsoft.com/en-us/library/ms228360%28VS.80,lightweight%29.aspx
- "structs are very similar to classes"
- "the Int32
class wraps the int
data type"
- "On the other hand, all primitive data types in C# are objects in the System namespace. For each data type, a short name, or alias, is provided. For instance, int
is the short name for System.Int32".
我的混淆主要在于C#(我曾经为一些人安排了 j)。
http://www.ohchr.org。 以下段落经确认为正确的:
- Java has two types (primitive and class). The words "value type" could be a synonym for primitive (although not widely used) and "reference type" for class. Java "wraps" primitives (int) in classes (Integer) and these classes have the complete power of any other class (can be null, used in collections, etc.)
http://www.ohchr.org。 @Jon就C#作了非常清楚的发言,因此,我将删除我建议的真理,并提及他的答复。
其他问题: 是否应当就这些术语的实际使用达成共识? 如果有共识,我非常感谢它明确阐述。 否则,我就认为术语被mud弄,因此使用有限。
www.un.org/spanish/ecosoc 得到非常明确的答复。 真正理解这一点的人之间有共识(见“Jon”的公认答案),而“MS docs”则是一致的(尽管他们指的是地方的Java,我对“C#”的误解)。