通过包的名字可以得到包里边的所有类的名字吗?谢谢!

解决方案 »

  1.   

    可以,像你用IDE时,import *.*.一样、
      

  2.   

    呵呵,我也不知道用什么方法,请会的指教吧,我知道有个命令可以显示jar包的内容。
    jar tf test.jar
      

  3.   

    import java.io.IOException;
    import java.util.Enumeration;
    import java.util.jar.JarFile;public class Test4 {

    public static void debug(String msg){
    System.out.println(msg);
    } public static void main(String[] args) {
    try {
    JarFile oJar = new JarFile("e:\\jideal-0.1.jar");
    Enumeration oList = oJar.entries();
    String sName = "";
    while (oList.hasMoreElements()){
    sName =oList.nextElement().toString().toLowerCase(); 
     if (sName.endsWith(".class")){
      debug(sName);
     }
    }
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    }
    想要这个?
      

  4.   

    我的原意是想把程序运行时所能够知道的类的名字全部列出来,或者输入一个包的名字,就自动列出里边类的名字,象JBuilder2005里的ClassInsight那样的效果吧
      

  5.   

    自己遍历jar文件查到所有的类
      

  6.   

    可是你并不一定总是知道jar文件在什么地方的呀
      

  7.   

    可以通过classpath到得jar文件
    如果classpath中没有?
    那么。。
    你怎么用这个包呢?
      

  8.   

    Croatia(Croatia) ( ) 信誉:99 
    你前面讲过的那个方法是可以的,你还能告诉我一个不去读文件的方法吗?
      

  9.   

    java.lang.Package与java.lang.Class没有进行双向关联
    只能通过Class找到Package 不能通过Package找到Class[]
      

  10.   

    就是写一个class 继承 Package{
    List classList;//加一个成员 Class的集合
    构造方法(){
    super();
    classList=?//此处怎么实现就是你现在问的问题
    //我没找到好办法
    }
    }whh 我说了等于没说
      

  11.   

    不读文件的做法,我还没有想到.我看,需要去解析一下ECLIPSE之类的IDE怎么做的.看到的话,再来回答你.
      

  12.   

    好呀 我现在知道jdk1.5里有个Instrumentation Class 可以做到,只是不知道低版本的怎么办