创建一个包放入2个类X1,X2:
package example.bag;
public class X1
{ ......}package example.bag;
public class X2
{......}然后调用包:
若是 import example.bag.X1;
    import example.bag.X2;
这么调用程序没问题;但是  import example.bag.*;这么调用包内容怎么程序就报错呢?那天上课老师遇到这问题也弄不清楚。

解决方案 »

  1.   


    首先如果楼主描述正确的问题话,上述代码是没问题的。import * 和import 类名无异。
    解决方法:先确定你的代码跟你们老师不相同,然后查看package的路径是否与Import的相同,可能只是一个小小的粗心。
      

  2.   

    代码不可能错的,很简单的代码,源程序代码如下:
    类X1:
    package example.bag;
    public class X1
    {
    int x,y;
    public X1(int i,int j)
    {
    this.x=i;
    this.y=j;
    System.out.println("x="+x+" "+"y="+y);
    }
    public void show()
    {
    System.out.println("This class is a X1.");
    }
    }类X2:
    package example.bag;
    public class X2
    {
    int m,n;
    public X2(int i,int j)
    {
    this.m=i;
    this.n=j;
    System.out.println("m="+m+" "+"n="+n);
    }
    public void show()
    {
    System.out.println("This class is a X2.");
    }
    }
    类B:
    import example.bag.*;//此处若换成import example.bag.X1;import example.bag.X2就对了。
    public class B
    {
    public static void main(String args[])
    {
                    X1 a=new X1(2,8);
    X2 b=new X2(3,7);
                    a.show();
                    b.show();
            
            }
    }运行是
    E:>javac . X?.java
    E:>javac B.java
    ...
      

  3.   

    上面是E:>javac -d . X?.java
    可怎么会报错呢?
      

  4.   

    兄弟,你的代码非常正确。
    可能是你编译环境出了问题。
    你换个编译器用用,eclipse
    我用这个编译的,没有问题。
    搞java的就是这点不好,代码没有错。就是报错!
    这就是我老师经常说的:“人品有问题”换个编程软件试试,一定行。
    JCreator
    jbuilder
    ^_*
      

  5.   

    你应该是把X1.java和X2.java以及B.java放在了一个目录下,你试着X1.java和X2.java编译好后放到别的文件夹里或者删了,然后运行试试看。
    用eclipse等会自动帮你把.java文件和.class文件分开,所以不会出现这个问题。
    我们老师以前好像说过会可能有影响,具体的我也忘了。