开发者社区> 问答> 正文

Java 语言规范在平台无关性中起到什么作用?

Java 语言规范在平台无关性中起到什么作用?

展开
收起
开发者小助手_LS 2021-10-21 14:11:06 455 0
1 条回答
写回答
取消 提交回答
  • 已经有了统一的 Class 文件,以及可以在不同平台上将 Class 文件翻译成对应的二进制文件的 Java 虚拟机,Java 就可以彻底实现跨平台了吗?其实并不是的,Java 语言在跨平台方面也是做了一些努力的,这些努力被定义Java 语言规范中。

    比如,Java 中基本数据类型的值域和行为都是由其自己定义的。而 C/C++中,基本数据类型是由它的占位宽度决定的,占位宽度则是由所在平台决定的。所以,在不同的平台 中,对于同一个 C++程序的编译结果会出现不同的行为。

    举一个简单的例子,对于 int 类型,在 Java 中,int 占 4 个字节,这是固定的。 但是在 C++中却不是固定的了。在 16 位计算机上,int 类型的长度可能为两字节;在32 位计算机上,可能为 4 字节;当 64 位计算机流行起来后,int 类型的长度可能会达到 8字节。(这里说的都是可能哦!)

    通过保证基本数据类型在所有平台的一致性,Java 语言为平台无关性提供强了有力的支持。

    资料来源:《Java工程师成神之路(基础篇)》,链接:https://developer.aliyun.com/topic/download?id=923

    2021-10-21 14:12:58
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
阿里云开发者社区官方技术圈,用户产品功能发布、用户反馈收集等。
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载