首 页IT知识库翔宇问吧收藏本站
当前位置:翔宇亭IT乐园IT知识库编程技术Java

为什么java的文件名必须和公共类名相同

减小字体 增大字体 作者:不详  来源:IT部落  发布时间:2010-03-12 07:37:00
  首先Java是被解释执行的。它在运行时并不是将所有的class文件全都放到内存中。而是在遇到import的时候才去相应的文件目录找相应的class文件。

  对于一个public类,它是可以被项目中任何一个类所引用的,只需在使用它前import一下它所对应的class文件即可。将类名与文件名一一对应就可以方便虚拟机

  在相应的路径(包名)中找到相应的类的信息。如果不这么做的话,就很难去找,而且开销也会很大。

  一下是我写的一个比较“恶心”的程序来说明这个问题,大家在使用前先要将自己JDK的bin目录设置到环境变量path中去:

  import java.io.FileOutputStream;
  import java.io.IOException;
  import java.io.FileNotFoundException;
  public class Test
  {
            public static void main(String[] args) {
               Object b = null;
                try {
                         b = Class.forName("Hello").newInstance();
                    }
                   catch(InstantiationException e) {  }
                   catch(IllegalAccessException e) { }
                   catch(ClassNotFoundException e) {
                       try {
                                    FileOutputStream file = new FileOutputStream("Hello.java");
                                    String s = "public class Hello {\r\n\t\r\n\tpublic Hello() {\r\n\t\tSyst"
                                                         + "em.out.println(\"Hello, world!\");\r\n\t}\r\n}\r\n";
                                    file.write(s.getBytes());
                                    Process p = Runtime.getRuntime().exec("javac Hello.java");
                                    System.out.println("The return value is: " + p.waitFor());
                                    b = Class.forName("Hello").newInstance();
                              }
                         catch(FileNotFoundException ee) {  }
                         catch(IOException ee) {  }
                         catch(InterruptedException ee) {  }
                         catch(InstantiationException ee) {  }
                         catch(IllegalAccessException ee) {  }
                         catch(ClassNotFoundException ee) {  }
                      }
              }
  }


本文源自:翔宇亭——IT乐园(http://www.biye5u.com),转载请保留此信息!

Tags:java 公共类

知识评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 1分

内 容:

            请注意用语文明且合法,不要发布带有攻击性、侮辱性的言论,谢谢合作!

         通知管理员 验证码:

关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图 | 用户守则 | 联系我们
本站部分内容来自互联网,如有侵权,请来信告之,谢谢!
Copyright © 2007-2017 biye5u.com. All Rights Reserved.
网站备案号:黑ICP备13005378号-3