黑马程序员技术交流社区
标题:
静态函数什么时候使用
[打印本页]
作者:
bulala
时间:
2015-12-14 19:52
标题:
静态函数什么时候使用
要从两方面下手:因为静态修饰的内容有成员变量和成员函数。
什么时候定义静态变量(类变量)呢?
当对象中出现共享数据时,该数据被静态所修饰。对象中特有的数据要定义成非静态存在于堆内存中。
什么时候定义静态函数呢?
当功能内部没有访问到非静态数据(对象的特有数据),那么该功能可以定义成静态的。
class Person
{
String name;//成员变量,实例变量
static String country = "CN";//静态的成员变量,类变量
public void show(){
System.out.println("name="+name+",country="+country);
}
}
class StaticDemo
{
public static void main(String[] args)
{
Person p1 = new Person();
/*
p1.name = "zhangsan";
p1.show();
Person p2 = new Person();
p2.name = "lisi";
p2.show();
*/
System.out.println(p1.country);
System.out.println(Person.country);
}
}
作者:
王晓亮
时间:
2015-12-14 20:37
{:2_32:}{:2_33:}{:2_32:}{:2_32:}!!!!!!
作者:
Jerson_ZF
时间:
2015-12-14 21:04
Person类中的name是每个对象都有的属性,而且每个对象都不一样,因此不能定义为静态变量
作者:
队长别开枪是我
时间:
2015-12-14 23:43
可以 顶一下
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2