文章目录:
- 1、Java程序的原文件名称与主类的名称相同,后缀可为.Java或者.TxT。对吗?
- 2、既然linux上的java代码和windows上的Java代码一样,为什么还要有字节码的存在?
- 3、java 得到网页源码为啥跟浏览器查看到的网页源码不一样呢?
- 4、sun.nio包是什么,是java代码么
- 5、Java的跨平台特性是指它的源代码可以在多个平台运行
- 6、C语言和C++以及Java的本质区别是什么?它们应用的平台和运行环境个是什么?
Java程序的原文件名称与主类的名称相同,后缀可为.Java或者.TxT。对吗?
java源代码文件(.java)-编译-calss文件-运行。
java源文件为xx.java,需要包含一个与文件名相同的class名,且文件后缀必须为.java,否则javac(java编译器)编译不会通过。
既然linux上的java代码和windows上的Java代码一样,为什么还要有字节码的存在?
凡是机器,只能运行二进制的可执行执行文件,解释型语言是运行时编译的,所以解释型语言的运行效率会低得可怕。
java不是解释型语言,必须要编译后才能运行。
能识别class字节码的是java虚拟机,不是Windows或者Linux。
Java是一种专门为了企业级应用而生的语言,你应该知道他为什么不是解释型的了。
java 得到网页源码为啥跟浏览器查看到的网页源码不一样呢?
从浏览器查看到的源码是页面运行过之后的html静态文件(这个就是最终源码了),并不是开发时候的页面源码。
sun.nio包是什么,是java代码么
Oracle/Sun JDK下的src.zip只带有 java.* / javax.* 的公有API的源码,sun.nio属于Oracle/Sun JDK的私有API,所以没有包含在src.zip里。
所谓公有/私有API,此处最大的区别不在于是否开放源码,而在于是否属于Java平台规范的一部分。
Java标准库的公有API属于规范的一部分,所有符合规范的JDK/JRE实现都必须提供完全一样的Java标准库公有API(只要API兼容即可,不要求内部实现完全一样)。而私有部分可以每个JDK/JRE自行决定API。
从OpenJDK 7开始,Oracle JDK跟OpenJDK的Java库的大部分源码都是完全一致的。有需要的话请去OpenJDK看源码
Java的跨平台特性是指它的源代码可以在多个平台运行
错
Java代码是字节代码,就像楼上所说的Java是运行在虚拟机上的,虚拟机将Java字节代码和具体的平台给隔开,不同平台上面运行的虚拟机是不一样的,而这些虚拟机对Java代码要求是一样的,所以Java可以在多个平台运行
C语言和C++以及Java的本质区别是什么?它们应用的平台和运行环境个是什么?
1. C语言是纯面向过程语言,Java是纯面向对象语言,C++是二者兼有
2. C语言和C++都是编译运行,Java是通过虚拟机解释运行,从运行速度上讲,C和C++更快
3. 从表面上来说,Java是跨平台的语言,同样一份二进制码,可以分别放到不同的平台,运行出相同的结果,但是事实上,每个平台也都有C和C++的编译环境,同样的源码,也可以放到不同的平台编译出不同的可执行文件,因此跨平台的优势,Java显得并不是非常明显
4. Java更多的用于Web应用、手机应用,C和C++更多的应用于数据处理,后台服务
多个平台运行错Java代码是字节代码,就像楼上所说的Java是运行在虚拟机上的,虚拟机将Java字节代码和具体的平台给隔开,不同平台上面运行的虚拟机是不一样的,而这些虚拟机对Java代码要求是一样的,所以Java可以在多个平
机应用,C和C++更多的应用于数据处理,后台服务
va是运行在虚拟机上的,虚拟机将Java字节代码和具体的平台给隔开,不同平台上面运行的虚拟机是不一样的,而这些虚拟机对Java代码要求是一样的,所以Java可以在多个平台运行C语言和C++以及Java的本质区别是什么?它们应用的平台和运行环境个是什么?1. C语言是纯面向过程语言,Java是纯面
(只要API兼容即可,不要求内部实现完全一样)。而私有部分可以每个JDK/JRE自行决定API。从OpenJDK 7开始,Oracle JDK跟OpenJDK的Java库的大部分源码都是完全一致的。有需要的话请去Ope
的源码,也可以放到不同的平台编译出不同的可执行文件,因此跨平台的优势,Java显得并不是非常明显4. Java更多的用于Web应用、手机应用,C和C++更多的应用于数据处理,后台服务