用static修饰的变量、方法叫静态成员、方法。属于整个类所有,而不是某个对象所有,即被类的所有对象所共享。静态成员可以使用类名直接访问,也可以使用对象名进行访问。
Java中静态方法与非静态方法的区别
首先,两者本质上的区别是:静态方法是在类中使用staitc修饰的方法,在类定义的时候已经被装载和分配。而非静态方法是不加static关键字的方法,在类定义时没有占用内存,只有在类被实例化成对象时,对象调用该方法才被分配内存。
1.静态方法可以通过类名直接调用。
用法: A.sayHi(); 优点是调用方便。
2.非静态的方法是先声明类实例才能调用类中的方法。
用法:A a = A();
a.lookMe();
3.我们一般常用的方法是静态方法。静态的速度快,占内存。动态的速度相对慢些,但调用完后,立即释放类,可以节省内存,可以根据自己的需要选择是用普通方法还是静态方法。
4.静态方法主要的问题就是数据同步的问题。如果你的静态方法的类中不保存私有变量那么什么问题都不会有的。最好是把要操作的数据全部以参数的方式传到方法中去。
5. 静态方法是类方法,调用时不需要创建类实例。
6. 静态方法是静态绑定到子类,不是被继承。