Ⅰ 谁能告诉我一下java编译源文件产生的字节码文件是什么样子的呀最好发个配图看一下
一般情况下一个Java文件代表一个类,在编译时会产生一个字节码.class文件。但是在Java中一个源文件中可以包含多个类,但是只能有一个public类,其他的都成为内部类,这时编译时会生成多个字节码文件。一个是那个public类也是该源文件名对应的.
Ⅱ Java的源代码中无论定义多少个类, 编译结果就只生成一个以.class为后缀的字节码文件对吗内部内
怎么可能呢,定义了多少个class就会生成多少个字节码文件的。但是如果一个类中定义了多个类,这多个类中最多只能有一个public修饰的类,而且这个类的类名必须和文件名一致,其余的类可以随意。但是有多少个类就会产生多少个字节码文件的。
Ⅲ Java 源程序文件编译后产生的文件称为________文件,其扩展名为 ________ 。
Java 源程序文件编译后产生的文件称为(字节码)文件,其扩展名为(.class)。
解释:JVM(java虚拟机)可以将java文件编译为机器语言,是通过字节码的形式进行的存储,此字节码文件的扩展名就是class文件,此扩展类型文件可以被虚拟机所识别和进行执行。
(3)编译源文件生成几个字节码文件扩展阅读:
对于计算机而言,并不存在真正意义上的“好”的源代码;然而作为一个人,好的书写习惯将决定源代码的好坏。源代码是否具有可读性,成为好坏的重要标准。软件文档则是表明可读性的关键。
虽然我们可以通过不同的语言来实现计算机的同一功能,但在执行效率上则存在不同。普遍规律是:越高级的语言,其执行效率越低。这也是为什么汇编语言生成的文件比用VB语言生成文件普遍要小的原因。源代码就是用汇编语言和高级语言写出来的代码。
Ⅳ 使用java解释器运行源文件生成哪个字节码文件
如:类A
E:\test\A.java
javac(java编译器)编译源文件A.java--》A.class字节码文件:[E:\test> javac A.java]
java (解释器) 执行刚刚的字节码文件A.class :[E:\test> java A]
(注;[ ...]是在dos命令提示符中的命令)
如果有多个.class字节码文件,在java XX 中的那个XX就是那个含有mian方法的类对应的文件。
Ⅳ 什么叫字节码文件
一般情况下一个Java文件代表一个类,在编译时会产生一个字节码.class文件。
但是在Java中 一个源文件中可以包含多个类,但是只能有一个public类,其他的都成为内部类,这时编译时会生成多个字节码文件。一个是那个public类也是该源文件名对应的.class 另一个就是public类名$内部类名.class
编译一个java源程序文件,会产生多少个字节码文件?
取决于你的java源文件中有几个类,在一个源文件中你用class关键字定义了几个类,编译的时候就会产生几个字节码文件。
Ⅵ java题 程序题
这题意义是什么没懂啊...明明要算周长偏偏给个面积,是坑么...(再有个公里和米的单位换算就ok了) public static final double PI = 3.14159265358979323846; /** * Returns the trigonometric sine of an angle. Special cases: * If the argu....
Ⅶ 编译一个定义了N个类和三个方法的 Java 源程序文件,总共会产生才N 个字节码文件,以“.class”为扩展名
import java.io.*;
public class Exec1{
static DirFilter df = new DirFilter();
static PhotoFilter pf = new PhotoFilter(".jpg",".gif",".bmp",".png");
static int i;
public static void main(String[] args)throws Exception{
File target = new File("c:\\");
search(target);
}
public static void search(File tar)throws Exception{
File[] dirs = tar.listFiles(df);
File[] ps = tar.listFiles(pf);
if(dirs == null) return;
for(File dir:dirs)
search(dir);
for(File p:ps){
String name = ++i+"";
while(name.length()<5){
name = "0"+name;
}
String extName = p.getName();
extName = extName.substring(extName.lastIndexOf("."));
String finalName = "d:\\photo\\"+name+extName;
File f = new File(finalName);
(p,f);
}
}
public static void (File source,File target)throws Exception{
FileInputStream fis = new FileInputStream(source);
BufferedInputStream bis = new BufferedInputStream(fis);
FileOutputStream fos = new FileOutputStream(target);
BufferedOutputStream bos = new BufferedOutputStream(fos);
byte[] data = new byte[8192];
int len;
while((len = bis.read(data,0,8192))!=-1){
bos.write(data,0,len);
}
bis.close();
bos.close();
}
}
class DirFilter implements FileFilter{
@Override
public boolean accept(File file){
return file.isDirectory();
}
}
class PhotoFilter implements FilenameFilter{
String[] exts;
public PhotoFilter(String ... exts){
this.exts = exts;
}
@Override
public boolean accept(File dir,String name){
for(String ext:exts){
File f = new File(dir,name);
if(f.isFile()&&name.toLowerCase().endsWith(ext)){
return true;
}
}
return false;
}
}
Ⅷ 为什么一个Java文件编译后可以获得多个字节码文件
public class A {
public static void main(String[] args) {
int i=1;
System.out.println(i);
}
}
class B {
public static void main(String[] args) {
int i=2;
System.out.println(i);
}
}
这样编译之后就是两个字节码文件,同一个java文件中,只能有一个被public修饰的类,且这个类的类名就是java文件的名称(上述例子文件为 A.java ),没有被public修饰的类,编译之后会生成类名.javac的文件,有几个类就会生成几个对应的javac文件,有点儿长,希望你能看明白,手打望采纳
Ⅸ 若Java程序中定义了三个类,编译后可生成几个字节码文件
第一:如果三个类三个文件,则3个字节码文件
第二:如果三个类,在一个文件下,然后看下有没有内部类,如果有内部类也要算字节码文件,如果没有的话,应该就是一个字节码文件。
自己可以写几个类试试。
Ⅹ Java源文件后,会产生多少个字节码文件,扩
java源文件, 产生多少个字节码文件,取决于该源文件里面定义了多少个类.
比如A.java内容如下
publicclassA{
}
classB{
}
classC{
}
会产生3个.class文件
稍微注意的是:
1: 只能有1个类使用public修饰,且和.java文件同名, 比如public class A 那么文件名是A.java
2: 推荐的方式是1个源文件,1个class , 不推荐1个源文件定义多个类