可以在Java中创建新的基本数据类型

可以在Java中创建新的基本数据类型,java,types,Java,Types,首先我想澄清的是,这个问题是出于好奇。我没有面临任何问题 Javabyte、short、int等中有许多基本类型可用。现在假设我想创建一个新的基本类型(例如mediumint或其他任何类型)。我们能做到吗? 如果是,那么如何定义?基本类型是由语言本身定义的类型。在Java中,您只能将新类型定义为类所有派生自名为对象的公共基类您不能创建自己的基本数据类型 正如Java文档所解释的:不,您不能创建基本数据类型 原始数据类型是指在语言特征中提供并存在的数据类型。基于性能原因,Java基本上支持这一点,

首先我想澄清的是,这个问题是出于好奇。我没有面临任何问题

Java
byte
short
int
等中有许多基本类型可用。现在假设我想创建一个新的基本类型(例如
mediumint
或其他任何类型)。我们能做到吗?
如果是,那么如何定义?

基本类型是由语言本身定义的类型。在
Java
中,您只能将新类型定义为
所有派生自名为
对象的公共基类

您不能创建自己的基本数据类型


正如Java文档所解释的:

不,您不能创建基本数据类型

原始数据类型是指在语言特征中提供并存在的数据类型。基于性能原因,Java基本上支持这一点,并执行算术运算


您可以使用
对象的概念创建用户定义的数据类型
您可以,但这样它就不再是Java了。

你们都错了。 对你可以。 通常,您不需要全新的基元类型。因此,您不需要重建JVM。 通常,您只需要将新的原语类型“打包”或“强制转换”到现有的原语类型,并使用其包装器定义一些操作,如“+”

您可以相对简单地使用原始JVM,但使用您自己的Java编译器。
祝你好运

是什么阻止了他玩弄原始代码?你可以搞乱JVM的源代码,但它不会是Java,因为Java是由Java语言规范()定义的。答案是:在一些类似的语言(例如C#)中,你可以定义自己的对象,这些对象通过value()传递,在某些方面类似于原语。但是在Java中你不能。@dtech:在我看来,C#的结构更类似于类而不是原始数据。它们是原始数据和方法的简单集合。唯一的区别是,你所指出的是通过值传递的。@ dCeTe:也许你不认为C++是“合理的OOP语言”:)。但是在C++中,可以通过值或引用传递对象。