我们在java中什么时候使用静态呢?
要从两方面下手:
因为静态修饰的内容有成员变量和函数。
什么时候定义静态变量呢?
当对象中出现共享数据时,该数据被静态所修饰,对象中的特有数据需要定成非静态存在于堆内存中。
什么时候定义静态函数呢?
当功能内部没有访问到非静态数据(对象的特有数据),该功能可以定义成静态的。
我们举个例子。
class Person
{
String name;
public static void show()
{
System.out.println("haha");
}
}
class
{
public static void main(String[ ] args)
{
Person p=new Perosn();
p.show();
}
}
我们建立这个对象,但是这个对象并没有作用,所以这个定义的静态的并没有意义,而我们把static去掉然后括号中写name='haha'就是有意义的,就可以实现了。
class Person
{
String name;
public void show()
{
System.out.println(name+"haha");
}
}
class a
{
public static void main(String[ ] args)
{
Person p=new Person();
p.show();
}
}