就是说不能用pe.size()吗?可是我又想用到这个函数,应该怎么去解决呢?请指点一二

解决方案 »

  1.   

    我想把showElist作为静态的方法在showAList里使用应该怎么修改呢?
      

  2.   

    并不是不能使用size()这个函数,而是不能在静态方法中使用非静态的成员pe,除非pe也是静态的
    showElist作为静态方法在showAlist中使用可以象上面程序中那样,不需修改
      

  3.   

    import java.util.Vector;
    class PersonnelDept 
    {
    Vector pe = new Vector(2);

    static void showEList(){                         //修改
                       PersonnelDept pt = new PersonnelDept();
    int size = pt.pe.size();
    for (int i=0;i<=size ;i++ )
    {   

    System.out.println(pt.pe.get(i));//修改
                    }
    }
    public void showAList () {
    PersonnelDept.showEList();
    }
    }
    晨星说的对;
    因为静态成员属于整个类,而非静态成员由于隶属于每一个具体的实例,因此只有在类的实例被产生出来之后才有意义。
      

  4.   

    Vector pe = new Vector(2);
    由于per是你用new构造出来的,所以可以理解为是一个static对象所以在你的方法中构造一个实例
    public class test extend object 
    ......
    public asdasd()test mytest = new test();
    int a = mytest.pe.getsize();
      

  5.   

    错误信息告诉你了,pe 不是静态的。。因为静态函数先初始化的,初始化时 pe 对象还没产生呢!!
      

  6.   

    错误信息告诉你了,pe 不是静态的。。因为静态函数先初始化的,初始化时 pe 对象还没产生呢!!
      

  7.   

    学到一些,谢谢各位。
     在这里可以不用vector 吗, 老师说在java 里面最好不要去用这个。
      

  8.   

    谢谢大家的帮助!重点谢谢steedhorse(晨星) 和star_str(生命火花),晨星让我想到了另一种解决方法,而生命火花给出了一种我之前有点想法但是不知道怎么用的解决方法.