1. static关键字的解释?
通常,我们创建类时会指出那个类的对象的外观与行为。除非用new 创建那个类的一个对象,否则实际上并 未得到任何东西。只有执行了 new 后,才会正式生成数据存储空间,并可使用相应的方法。 但在两种特殊的情形下,上述方法并不堪用。一种情形是只想用一个存储区域来保存一个特定的数据——无 论要创建多少个对象,甚至根本不创建对象。另一种情形是我们需要一个特殊的方法,它没有与这个类的任 何对象关联。也就是说,即使没有创建对象,也需要一个能调用的方法。为满足这两方面的要求,可使用 static(静态)关键字。一旦将什么东西设为static,数据或方法就不会同那个类的任何对象实例联系到一 起。所以尽管从未创建那个类的一个对象,仍能调用一个 static方法,或访问一些 static数据。
2. static关键字的用途?
- 放在数据前面,即将数据设为static数据后。可以直接用类名引用这个静态变量,且这个类创建的所有对象都共用这个数据。
- 放在方法前面。可以在不必创建对象的前提下,直接用类名引用这个方法。需要注意在static方法内部不能直接调用非static方法,需要创建实例再调用,反之可以。
3. static方法就是没有this的方法怎么理解?
静态方法是整个类的方法,不属于单独的类的对象方法,也就是方法中没有控制这个对象本身的句柄。