java中static

在《Java编程思想》P86页有这样一段话:

  “static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来调用static方法。这实际上正是static方法的主要用途。

  简而言之,static关键字的基本作用,一句话来描述就是:

  方便在没有创建对象的情况下来进行调用(方法/变量)

(1)static修饰方法

  static方法一般称作静态方法,由于静态方法不依赖于任何对象就可以进行访问,因此对于静态方法来说,是没有this的,因为它不依附于任何对象,既然都没有对象,就谈不上this了。

      虽然在静态方法中不能访问非静态成员方法和非静态成员变量,但是在非静态成员方法中是可以访问静态成员方法/变量的。

 

  上述代码中,静态方法print2不能使用非静态成员变量/方法,而非静态方法print1能使用静态成员变量/方法

(2)在Java中切记:static是不允许用来修饰局部变量(和private,public一样)

(3)static修饰的属性和方法,使用类名.xx的形式访问。非静态方法和成员变量,需要new一个对象才能引用。

posted @ 2019-09-16 20:08  翁啊难  阅读(26)  评论(0编辑  收藏  举报