㈠ java中字节码文件是什么哪个什么意思
就是.class文件,.java文件编译后就会生成.class文件(即字节码文件),然后编译器加载这个字节码文件,类加载器按类名加载文件中的类,执行入口main方法。
㈡ Java里的字节码和源代码分别啥意思,和起到什么左右
/*java是一门高级编程语言,是用来写程序代码的。
用java写的文本(字符串序列)就是源代码。
计算机不能直接执行源代码,必须用一个叫编译器的程序(javac.exe)将源代码
翻译成字节码,然后让一个叫解释器的程序(java.exe)去执行字节码,即运行程序。
下面的就是一个小程序的源代码,功能是输出九九乘法表。
下图中的Test.class就是这个源代码文件翻译后的由字节码组成的文件。
而最下面的那个黑框就是程序执行后的结果。
java Test就是在执行Test.class字节码文件,即运行这个程序。
*/
//这下面的就是源代码
public class Test {
public static void main(String[] args) {
int i,j;
for(i=1;i<=9;i++) {
for(j=1;j<=i;j++)
System.out.printf("%dx%d=%-4d",j,i,j*i);
System.out.println();
}
}
}
㈢ java字节码文件到底是什么东西,求教JAVA高手
java字节码是javac编译后产生的,当下次你再运行这个程序时,java虚拟机就直接执行字节码,不再调用java代码。
㈣ java程序编译后会产生字节码还是机器码
Java编译后是字节码,C/C++以前全都是是机器码。
电脑只能运行机器码。Java在运行的时候把字节码变成机器码。
C/C++在编译的时候直接编译成机器码。
不过现在微软的Visual Studio C++ 2005以后的C++也可以编译成字节码,用CLR运行是转换成机器码(和Java差不多)。
㈤ java字节码bipush什么意思
当int取值-128~127时,JVM采用bipush指令将常量压入栈中。
定义Test.java文件
1 public static void main(String[] args) {
2 int i = 127;
3 }
查看class文件
1 public static void main(java.lang.String[]);
2 Code:
3 0: bipush 127
4 2: istore_1
5 3: return
6 }
㈥ java字节码什么时候被翻译
字节码被翻译成机器码是在程序运行前的。你可以这样做来检验:编辑一段代码,保存后查看字节码文件的内容量,再编辑一段代码,保存后再去查看字节码文件的内容量,发现有所改变,从而证明字节码文件是程序运行前。深的我也不懂,希望对你有所帮助
㈦ java字节码加强是什么意思,加强有什么好处。
字节码是Java程序的中间表示,好处如下:
在调试,优化性能和调节内存分配时,这项知识是至关重要的。
了解编译器写的代码生成的汇编指令,有助于认识到如何以不同的编码实现内存或性能目标。
此外,当跟踪一个问题的时候,使用调试器(debugger)对源码反汇编,然后对正在执行的汇编代码进行单步调试是有益的。
采用字节码,就可以克服不同平台之间编译器的区别,统一使用虚拟的字节码就行编译运行。
㈧ java如何生成字节码文件
java生成字节码文件全过程:
Java 源码编译由以下三个过程组成:
1、分析和输入到符号表
2、注解处理
3、语义分析和生成class文件
流程图如下所示:
最后生成的class文件由以下部分组成:
结构信息。包括class文件格式版本号及各部分的数量与大小的信息
元数据。对应于Java源码中声明与常量的信息。包含类/继承的超类/实现的接口的声明信息、域与方法声明信息和常量池
方法信息。对应Java源码中语句和表达式对应的信息。包含字节码、异常处理器表、求值栈与局部变量区大小、求值栈的类型记录、调试符号信息
㈨ Java的Class字节码文件是二进制的吗
Java的Class文件是有8个字节为基础的字节流构成的,这些字节流之间都严格按照规定的顺序排列,并且字节之间不存在任何空隙,对于超过8个字节的数据,将按
照Big-Endian的顺序存储的,也就是说高位字节存储在低的地址上面,而低位字节存储到高地址上面,其实这也是class文件要跨平台的关键,因为
PowerPC架构的处理采用Big-Endian的存储顺序,而x86系列的处理器则采用Little-Endian的存储顺序,因此为了Class文
件在各中处理器架构下保持统一的存储顺序,虚拟机规范必须对起进行统一。
这些能被机器直接识别的就是二进制。