Java是否区分值类型和引用类型

C#区分了这两者。 java是做同样的还是不同的?

在Java中,所有对象和枚举都是引用类型,所有基元都是值类型。 两者之间的区别与C#中的复制语义相同,但您无法在Java中定义新的值类型。

实际上,Java中的所有内容都是通过值传递的,引用是一种特殊类型的值,就像指针是C中的值一样。更多关于语义的信息:

http://javadude.com/articles/passbyvalue.htm

另一方面,C#确实有真正的引用la C ++,它们与参考值无关……它会不会比这更令人困惑?

在Java中,基元是值类型,类和数组是引用类型。