我用java编写了一些程序,但是我想知道它们是32位还是64位,我的意思是如果它是64位,它将如何在32位计算机上运行?如何判断我写的程序是32位还是64位?
回答
我用Java写了一些程序,但我想知道他们是否是32位或64位
都不是。您的Java程序不是特定的32位或64位。
所有的java程序都应该运行在每一个最新的Java实现上。
当你编译一个java程序时,它变成了Java bytecode,它通常独立于你编译的平台和运行它的平台。
这个问题要回答一些问题,为您提供:Java 32-bit vs 64-bit compatibility
虽然64位Java实现可能会处理一些64位操作更好,应该是没有区别为程序的运行(假设你不是活得t使用需要64位实现的库)。
它由JRE决定。存在JRE和64位版本的32位版本。
编译Java程序独立于系统架构。 在情况下,如果要检查JVM位大小为某些特定情况下,你可以使用
System.out.println("JVM Bit size: " + System.getProperty("sun.arch.data.model"));
一般我们从来不写代码,我们可以说,32位或64位。它实际上取决于JRE和机器。其余部分由JVM和CPU管理。
例如,如果我们在32位机器上使用64位基本类型long或double,那么即使像long var = 10l;
这样的分配操作也不会是原子操作。它会发生在32位的两个阶段。
但是相同的赋值操作将是64位的原子操作。
你的答案是正确的,你可以添加信息从http://howtodoinjava.com/core-java/basics/difference-between-32-bit-java-vs-64-bit-java/为未来的参考和完整性 – Pfeiffer
在64位jvm中读写long和double类型的值不是原子的。jvm没有指定它。并且jls定义了:'对于Java编程语言的存储器模型而言,单个写一个非 - 易失性长或双值被视为两个独立的写入:每个32位一半。 Java虚拟机的实现可自由地执行写入长和双值的原子或两部分.',并且不需要32位或64位 – dabaicai
@Pfeiffer不,这个答案是不正确的。 **这个答案是非常错误的。**阅读Java规范[17.7。非原子治疗双重和长期](http://docs.oracle.com/javase/specs/jls/se7/html/jls-17.html#jls-17.7):它明确表示,有***没有*保证原子写入'double'或'long' **,除非标记为volatile。 JVM实现*可能*执行原子写入,但没有Java程序员应该依赖它。如果使用多线程,则必须防止不正确地读取半写的64位数字。 –
- 1. 如何判断应用程序是以32位还是64位模式运行?
- 2. 如何判断我的现有Amazon EC2实例是32位还是64位?
- 3. 如何判断我的应用程序是作为32位还是64位应用程序运行的?
- 4. 如何检测Cocoa应用程序是32位还是64位?
- 5. 如何检查我的Perl安装是32位还是64位?
- 6. 知道程序集是64位还是32位
- 7. 无论系统是32位还是64位,uint均为32位?
- 8. 使用WMI,我如何确定远程进程是32位还是64位?
- 9. 如何确定进程ID(PID)是32位还是64位应用程序?
- 10. 我在x86-64 PC上运行32位Windows。我应该下载32位还是64位的Python安装程序?
- 11. 如何检查安装的wxPython是32位还是64位?
- 12. 如何检查安装的Anaconda是32位还是64位?
- 13. 如何检测,如果CPU是32位还是64位
- 14. 如何检查WebSphere是32位还是64位?
- 15. 如何确定System.Diagnostics.Process是32位还是64位?
- 16. 如何找到它是32位还是64位? Tomcat
- 17. 有没有办法检查进程是64位还是32位?
- 18. 如何以编程方式确定特定进程是32位还是64位
- 19. 如何使用c程序找到我的机器是16位还是32位或64位
- 20. 如何查找我的Amazon EC2实例是32位还是64位?
- 21. 如何确定我的操作系统是32位还是64位?
- 22. 我如何检查编译的二进制文件是32位还是64位?
- 23. 如何从句柄中确定进程是32位还是64位?
- 24. 确定当前的PowerShell Process是32位还是64位?
- 25. 微软的IE图像是64位还是32位?
- 26. 我应该使用32位还是64位JDK?
- 27. 我应该使用Python 32位还是Python 64位
- 28. 如何找到Android应用程序是32位或64位
- 29. 如何判断我是否有x64或32位Solaris10
- 30. 是否可以使用PHP知道我的平台是64位还是32位?
你只会运行它,除非你做了一些特殊的java处理所有的东西给你。正常的java代码不关心你是否在64或32位jvm上运行它。 – Oleg
Java程序既不是32位也不是64位。只要有合适的JVM,它就可以运行。 – EJP