一直被这个静态变量和静态方法困扰着,傻傻分不清,今天就写个小笔记吧!
首先说一下静态变量:
我们在基于一个类创建很多该类的对象时,每个对象就会拥有自己的成员,并且是相互独立的。然而在一些时候,我们会遇到该类的所有对象共享同一个成员。此时就该static发挥作用啦!被static修饰的成员是属于整个类的,而不是某个对象的,被所有的对象所共享。
我们可以通过 类名.成员名 直接调用
注意:静态成员属于整个类,当系统第一次使用该类时,就会为其分配内存空间直到该类被卸载才会进行资源回收!~~
静态方法:
被static修饰的方法称为静态方法,其特性和静态变量也是差不多啦!
静态方法相对来说稍稍有些复杂,我们一个一个来说。
(1)静态方法可以直接调用同类中的静态变量,但是不能直接调用非静态方法;如果想要调用可以创建类的对象,然后通过对象访问。
(2)静态方法也是不能直接调用非静态方法的,需要通过对象来访问。
(3)在非静态方法中可以直接访问静态变量和非静态变量。
应该就这些了,最后总结一句话,对于静态成员是一改全改的!!!