例如有一个文件夹code,我将类TestOne生成的文件,类TestTwo生成的文件保存在该文件夹中,我可以在类TestOne中调用类TestTwo(它们是两个相互独立的程序文件)当我把TestTwo文件保存在另一个文件夹中,则类TestOne就不能调用它了1,为什么在相同文件夹中程序文件中的类可以相互调用?
2,为什么在不同文件夹中程序文件中的类不可以相互调用?

解决方案 »

  1.   

    你的类什么属性
    public的话 放到哪里都可以
    private的话,只有本身可以调
    producted 子类和同一个包里的可以调用
    没有修饰符的,默认此文件夹下的类可以调用你看你是哪一种
      

  2.   

    学习一下关于package,import,访问权限修饰符的内容,一切就都明白了
      

  3.   

    同意yanbin2283()的观点,这个很基础的问题了。
      

  4.   

    public,protected,private,package(friendly)这些修饰符我知道,这些修饰符主要是关于类对包的访问范围,但包和文件夹一样吗?我这里问的是文件夹的问题我将类TestOne,TestTwo的修饰符都设为public,但把TestTwo文件保存在另一个文件夹中,则类TestOne仍然不能调用它,为什么?我将类TestOne,TestTwo的修饰符都设为public,但没有把它们定义在某个具体的包中,是不是它们都不属于某个具体的包啊?我是菜鸟,问题很呆,请见谅
      

  5.   

    类中要import  TestTwo类
    如果是不同文件最好是带上包名,这样容易区别
      

  6.   

    在java中,文件夹和包有密切的关系。
    内在原理不解释了,自己看一下书。
    解决方法是:
    比如有一个test文件夹,里面有a,b两个独立的文件夹。
    把class A放在文件夹a中,并在开头写上package a;
    把class B放在文件夹b中,并在开头写上package b;
    把A.java和B.java放在Test下,用javac -d . A.java编译,同样编译B.java,
    需要注意的是,如果你的A需要B,则要在A.java中的package a;下写一句import b.B;
    并且先编译B.java,之后编译A.java.运行的时候在Test路径下,运行java a.A
      

  7.   

    public,protected,private,package(friendly)这些修饰符我知道,这些修饰符主要是关于类对包的访问范围,但包和文件夹一样吗?我这里问的是文件夹的问题
    抽象就叫包,实际就是文件夹,这就是我的理解。
    包不同,意味着文件夹不同。
    我将类TestOne,TestTwo的修饰符都设为public,但把TestTwo文件保存在另一个文件夹中,则类TestOne仍然不能调用它,为什么?
    理论上你说的这种事情不可能发生,因为一个大的项目必然有很多包,很多文件夹,只见也必然存在复杂的调用关系,所以不能调用是不可能的。至于你的为什么不能调用,根据你的描述实在不好猜阿,简易楼主描述的再清楚点。或者把程序贴出来啊。顺便说明包的范围/
    我将类TestOne,TestTwo的修饰符都设为public,但没有把它们定义在某个具体的包中,是不是它们都不属于某个具体的包啊?
    这个问题我也不知道,我感觉会属于一个很缥缈的包,系统默认的吧。没有的可能也是有的吧。
    我是菜鸟,问题很呆,请见谅
    都是从菜鸟起步的,问题一点也不呆,刚开始学都会碰到,没有问题才是呆子呢,不见谅!