| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 514 人关注过本帖
标题:[求助]关于static的一个问题
只看楼主 加入收藏
chenzhanpeng
Rank: 1
等 级:新手上路
帖 子:271
专家分:0
注 册:2007-1-5
收藏
 问题点数:0 回复次数:7 
[求助]关于static的一个问题
class my9
{
static int i=100;//静态变量
int j=400;//非静态变量
}

class my10
{
public static void main(String args[])
{
my9 a1=new my9();
my9 a2=new my9();

a1.i=90;
System.out.println
("第1个对象的静态变量值:"+a1.i);
System.out.println
("第2个对象的静态变量值:"+a2.i);

a1.j=80;
System.out.println
("第1个对象的非静态变量值:"+a1.j);
System.out.println
("第2个对象的非静态变量值:"+a2.j);
}
}
输出结果是
第1个对象的静态变量值:90
第2个对象的静态变量值:90
第1个对象的非静态变量值:80
第2个对象的非静态变量值:400
请问,第二个地象的静态变量值怎么不是100啊,My9这个类的i是等于100的
搜索更多相关主题的帖子: static 
2007-05-19 17:34
a276202460
Rank: 2
等 级:新手上路
威 望:4
帖 子:392
专家分:1
注 册:2007-4-10
收藏
得分:0 
static定义的变量 声明对象和类里面的变量是共享的 没有创建副本,对象里面变量的改变直接导致 static这个变量的值 把a2.i变成my9.i结果是一样的

2007-05-19 18:11
syuanq
Rank: 2
等 级:新手上路
威 望:3
帖 子:297
专家分:0
注 册:2006-12-11
收藏
得分:0 
static 创建的变量在同一个储存区域,a2.i把a1.i覆盖了,所以两个是一样值的,而实例变量创建了两个在不同区域的对象,两个值可以互相独立的

[url]www.[/url]欢迎大家的光临,一起交流学习
2007-05-19 23:53
chenzhanpeng
Rank: 1
等 级:新手上路
帖 子:271
专家分:0
注 册:2007-1-5
收藏
得分:0 
第二个为什么等于100,你们还没说明,哎呀。。。

生在蓝天下,共同成长进步。(:
2007-05-20 08:59
醉卧千山
Rank: 1
等 级:新手上路
帖 子:100
专家分:0
注 册:2007-4-15
收藏
得分:0 
对于static 变量它们是共享同一个内存地址,也就是说,无论是哪个对象所引起的static变量的变化,那么其它对象所得到的这个变量都会改变

天无绝人之路!
2007-05-20 09:13
chenzhanpeng
Rank: 1
等 级:新手上路
帖 子:271
专家分:0
注 册:2007-1-5
收藏
得分:0 
这概念很抽象啊,能不能说通俗一点啊,还是理解不透啊

生在蓝天下,共同成长进步。(:
2007-05-20 10:06
pity1115
Rank: 1
等 级:新手上路
威 望:2
帖 子:184
专家分:0
注 册:2006-9-15
收藏
得分:0 

static变量是属于类变量,一个类不管创建了多少个实例对象,它们都共享这个static变量,只要其中一个对象改变了变量的值,其它对象使用这个变量的时候,就变成了改变后的值.

非static的变量属于实例变量,每创建一个对象,这个对象就获得一个独有的变量,这个变量不会被其它对象修改。

你的代码中,i是static变量,它被a1修改以后,a2使用的时候就变成修改后的值
j是非static变量,a1修改的只是它自己的j值,不会影响a2中的j值,所以a2使用的还是它初始化时候的值.


2007-05-20 10:35
lilyfei
Rank: 1
等 级:新手上路
帖 子:36
专家分:0
注 册:2007-3-9
收藏
得分:0 

static变量,相当于全局变量

2007-05-20 13:15
快速回复:[求助]关于static的一个问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026197 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved