您的位置:首页 > 编程语言 > Java开发

关于java中static问题

2012-02-02 09:38 246 查看
实例变量与类变量的区别:

实例变量:类的所有对象都会被分配相应的实例变量,及不同的对象的实例变量存储在不同的内存里;

类变量:类的所有对象都共享一个类变量,及类被加载到内存时,类变量的内存已经被分配,改变其中一个对象的这个类变量会影响其他对象的这个类变量,及该类变量被所有对象所共享。

例:

class A{

int x;

static int y;

}

class B{

A a1=new A();

A a2=new A();

}



实例方法与类方法的区别:

实例方法:只有在类创建第一个对象时,实例方法才被分配入口,但是,该入口被所有对象共享,方法中的成员变量被认为是分配给该对象的成员变量,类变量和其他对象共享,该入口只有当所有对象不存在时才被取消。

类方法:在类被加载到内存中时,类方法就分配了相应入口地址,可以直接通过类名进行调用,只有当退出程序时该入口地址才被取消,所以类方法中只能调用类变量和类方法。

注:类方法中只能调用类变量和类方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java class 存储