public class variableAccess{
public int a;
private int b;
int c;
public void test()
{
  a=1;
  b=2;
  c=3;
  System.out.println("a"+a);
  System.out.println("b"+b); System.out.println("c"+c);}
private void test1()
{
  a=1;
  b=2;
  c=3;
  System.out.println("private  a"+a);
  System.out.println("private b"+b); 
  System.out.println("private c"+c);
}
 void test2()
{
  a=1;
  b=2;
  c=3;
  System.out.println("non of a"+a);
  System.out.println("private b"+b); 
  System.out.println("non of c"+c);
}
public static void main(String[]args)
{
variableAccess tst =new variableAccess ();
tst.test();
tst.test1();
tst.test2();
}}
这是一个写好的类我怎么在另外一个类中调用这个类?
import variableAccess; 
class testvariableAccess
{
  
public static void main(String[]args)
{
   variableAccess test_variableAccess  = new variableAccess();
   test_variableAccess.test();
   test_variableAccess.test1();
   test_variableAccess.test2();
   }
} 这是我想调用的类,为什么无法调用!在c#里,可以放在同一命名空间里,就可以访问到,在java中如何处理?java新手?是不是用到包的概念?是不是先要把 variableAccess打包,然后再引用这个包?希望有经验的朋友讲解下!

解决方案 »

  1.   

    如果在同一个目录下,你这样写是没有问题的。但是test_variableAccess.test1();
    这里编译的时候肯定会报错,因为private只能自己用,别的类里不能调用
      

  2.   

    这是方法访问权限问题!private的方法访问权限最低只能自己调用!
      

  3.   

    class testvariableAccess
    {这里应当在类前面加public,对于方法private void test1(),由于是私有的,只能在本类中使用,在另外类中不能调用
      

  4.   

    Java里的包和C#里的命名空间可以看成是一个概念
      

  5.   

    variableAccess不是public的,那么它默认是package级别,不知道你调用方是不是同package下的?
      

  6.   

    都是java爱好者。
    java探讨群
    【101706206】
    感兴趣的朋友都可以加进来啊。。
    大家一起探讨,一起进步啊
    不过仅限湖南地区额。。
      

  7.   

    趁着楼主的题目问下,variableAccess类里面也有一个main方法,是不是可以被调用这个类里的其他方法,还有,楼主的import variableAccess; 应该有错吧,variableAccess与调用他的类放同一个目录下,可以省略import ,如果不在同一目录,要加路径,比如import bao.variableAccess;
      

  8.   

    1.在java里,同一个包里的类,可以直接访问,不同包里的类,要用import导入
    2.用private修饰的方法,为私有的,只有本类可以访问,
      

  9.   

    test,test1,test2方法全部改成public的就可以访问了
      

  10.   

    访问范围依次增大
    private:类
    没有修饰:包
    protected:子类
    public:所有
      

  11.   

    main方法能不能被调用,我明天试试,这个还真没有想过。
    main方法,是不是可以被调用这个类里的其他方法,还有,楼主的import variableAccess; 应该有错吧,variableAccess与调用他的类放同一个目录下,可以省略import ,如果不在同一目录,要加路径,比如import bao.variableAccess 受教了,对java刚开始学,不是很了解。谢谢!我明天试试,给你结果
      

  12.   


    我试过了,去掉import,然后再把那个权限改了下,不过有个问题跟你说下,main方法是不能实例化方法访问的,它属于静态方法。可以被直接调用!修改后的public class variableAccess{
    public int a;
    private int b;
    int c;
    public void test()
    {
      a=1;
      b=2;
      c=3;
      System.out.println("a"+a);
      System.out.println("b"+b);
      System.out.println("c"+c);}
    public void test1()
    {
      a=1;
      b=2;
      c=3;
      System.out.println("a"+a);
      System.out.println("private b"+b); 
      System.out.println("private c"+c);
    }
    void test2()
    { a=1;
      b=2;
      c=3;
      System.out.println("a"+a);
      System.out.println("private b"+b); 
      System.out.println("non of c"+c);
    }
    public static void main(String[]args)
    {
    variableAccess tst =new variableAccess ();
    tst.test();
    tst.test1();
    tst.test2();
    }}[code=Java]
    class testvariableAccess
    {
      
    public static void main(String[]args)
    {
       variableAccess test_variableAccess  = new variableAccess();
       test_variableAccess.test();
       test_variableAccess.test1();
       test_variableAccess.test2();   }}[/code]
    好了,谢谢大家了,很多人都答对了我只能都给点了!再次谢谢!