static静态变量是只有一个副本,一改全改
静态方法不需要初始化直接可以调用
静态类就是.....自己看书去

解决方案 »

  1.   

    静态变量指的是类数据,即类不需要实例化就可以通过类名访问的数据。
    静态方法指类方法,即即类不需要实例化就可以通过类名调用的方法,因此在静态方法中只能调用
    静态变量。
    而静态类中的static的含义和上面两个static不同,因为静态类是关于inner class的。
    我们知道一个Java类文件中只能有一个public类的定义。这个public类叫做top level类。
    top level是不能为static.在top level中可以包含inner class,inner class有四种类型,如下:
    1、Anonymous,是指在一条语句中申明并实例的,没有名称,其他地方也不能使用它,如:
    okButton.addActionListener( new ActionListener(){
       public void actionPerformed(ActionEvent e){
          dispose();
       }
    });
    2、Local,是指和local变量一个层次定义的类,这个类在作用域中可以多次使用,如://some code block .......{
       class ListListener implements ItemListener {
          List list;
          public ListListener(List l) {
             list = l;
          }      public void itemStateChanged(ItemEvent e) {
             String s = l.getItemSelected();
             doSomething(s);
          }
       }
       List list1 = new List();
       list list2 = new List();
       list1.addItemListener(new ListListener(list1));
       list2.addItemListener(new ListListener(list2));
    }
    3、Member, 是定义在类中的类,这种当其没有用static修饰时,只能在类中使用。当其用static修饰时,便属于下一种情况。
    4、Nested top-level,这种类不仅可以在父类中使用,而且可以在外部使用,如:
    public class Filter {
       Vector criteria = new Vector();
       public addCriterion(Criterion c) {
          criteria.addElement(c);
       }
       public boolean isTrue(Record rec) {
          for(Enumeration e=criteria.elements();
          e.hasMoreElements();) {
             if(! ((Criterion)e.nextElement()).isTrue(rec))
                 return false;
          }
          return true;
       }   public static class Criterion {
          String colName, colValue;
          public Criterion(Stirng name, String val) {
             colName = name; colValue = val;
          }
          public boolean isTrue(Record rec) {
             String data = rec.getData(colName);
             if(data.equals(colValue)) return true;
             return false;
          }
       }
    }
    我们可以这样使用它:Filter f = new Filter();
    f.addCriterion(new Filter.Criterion("SYMBOL", "SUNW"));
    f.addCriterion(new Filter.Criterion("SIDE", "BUY"));
    .....
    if(f.isTrue(someRec)) //do some thing .....由此可以看出,静态类只能申明在member inner class类中,而且含义和普通的static是不一样的。
      

  2.   

    具体参见:
    http://www.javaworld.com/javaworld/javaqa/1999-08/01-qa-static2.html