当然可以了,但你得先创建javaBots对象呀!
class Sprite  {javaBots aa=new javaBots();aa.males=xxxxx;//你想写的值

}

解决方案 »

  1.   

    如果Sprite包含在javaBots里,则可以直接引用
      

  2.   

    cyicecream 小舟 说得对,可以直接用的,sprite是内部类。
    public class javaBots{int males = 0;
    int females = 0;
    int TotalCreatures = 0;public javaBots(){
    new Sprite();
    }class Sprite  {public Sprite(){
    males=12;
    System.out.println(males);
    }

    }
    public static void main(String[] args)
    {
    new javaBots();
    }}
      

  3.   

    to iamsoloist(Soloist), djwlsj(快乐石头):
      准确地说,males/females是在public class javaBots里面声明,void handleSysEvent里面赋值.如果我想用他们来给Sprite子类Creatures里面新声明的的变量HappyPeriod赋值。
      males/females这两个变量是随时间变化的,也就是说我希望HappyPeriod随males/females数值的变化而变化。这样能实现么?
    to cyicecream(小舟):
      不好意思,我有点不太明白“包含”的意思,如果是指在同一个.java文件里,那么是的。如果是指Sprite是avaBots的子类,恩,源程序里只看到class Sprite extends Observable。
      males/females都是在javaBots里声明赋值的,可是当我在Sprite里引用时告诉我说males/females未声明。多谢几位。
      

  4.   

    应该说你的两个class是在同一个package中,对于一个package中的class,如果变量及method没有指定访问控制符,是可以互相访问的。当然,如果变量或method不是static的是要通过class的实例进行访问的。