我们可更完整地理解static(静态)方法的含义。它意味着一个特定的方法没有this。我们不可从一个static方法内部发出对非static方法的调用(注释②),尽管反过来说是可以的。而且在没有任何对象的前提下,我们可针对类本身发出对一个static方法的调用。事实上,那正是static方法最基本的意义。它就好象我们创建一个全局函数的等价物(在C语言中)。除了全局函数不允许在Java中使用以外,若将一个static方法置入一个类的内部,它就可以访问其他static方法以及static字段。

解决方案 »

  1.   

    建议你看看:
    Effective JAVA !!!
      

  2.   

    public 是公共的!能够访问到程序包的所有代码都可以使用。
    private 是私有的!能够被该类所在的程序包中的代码是使用建议在定义的时候都用private 而定义方法是用public。 
    static 静态 如果一个对象被定义成静态的话,他能够在其他类的任何对象之前别访问 在java里static 定义的成员相当于全局变量。静态方法只能访问其静态数据字段是对的。
    以下是使用STATIC 需要注意的问题!
    static 定义的方法只能访问static 定义的方法,并且只能访问static 变量不能以任何形式引用this 和super。
      

  3.   

    在静态方法中只能直接使用静态数据。
    class Test
    {
       static int i=1;
       int j=1;
       public static main(String args[])
       {
          System.out.println(i);//正确。
          System.out.println(j);//错因为j为非static变量,而main方法是静态的。
          Test t=new Test();
          System.out.println(t.j);//在静态方法中可以通过对象来访问非静态变量。
       }
    }使用static的变量是类变量,生存周期就是类的生存周期。
    public 类可以被任意别的类访问。不管是不是在同一个包内。private只能用来修饰内部类,不能修饰顶级类。
      

  4.   

    静态方法可以访问它自己的局部变量、静态属性和它的参数,这三种数据。
    static 的生存期同它所在的类,对该类的所有对象而言,都是一样的。
    "public className class"里面的的public的使用范围是:
        Same Class,Same package,Subclass,Universe;
    private 只能为Same class.
         
      

  5.   

    定义 static 方法的目的是什么?
      

  6.   

    静态方法中定义一个局部变量,然后在静态方法中访问这个变量可以吗??
    class Test
    {
       static int i=1;
       
       public static main(String args[])
       {      int j=1;//静态方法中定义一个变量
          System.out.println(i);//正确。
          System.out.println(j);//这样会出错吗
          Test t=new Test();
          
       }
    }