标题:构造方法和内存分配问题
只看楼主
yynn
Rank: 1
等 级:新手上路
帖 子:279
专家分:0
注 册:2005-11-4
 问题点数:0 回复次数:5 
构造方法和内存分配问题
class Cat{
private static int sid=0;
private String name;
int id;
Cat(String name){
this.name =name;
id=sid++;
}
public static void main(String args[]){
Cat.sid=100;
Cat a= new Cat("a");
Cat b= new Cat("b");
}
}
一是构造函数第二行没有看懂,是什么意思,一般都是和new一起用,有第一行就够了
二是内存怎么分配,字符“a“ ”b“ 在堆内存里还是,data seg里!
搜索更多相关主题的帖子: 内存 分配问题 构造 
2007-11-09 06:11
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
得分:0 
this.name=name//左边的name是指该类的变量,就是对象本身的一个name,而右边的name是指传进来的参数,如果你写成:
Cat(String n),那么就可以写name=n了,一般类的变量和参数名相同的话会用到this
具体的对象在堆里,引用在栈里

I'm here, as always...
2007-11-09 09:41
yynn
Rank: 1
等 级:新手上路
帖 子:279
专家分:0
注 册:2005-11-4
得分:0 
id=sid++;关键是这行,怎么也构造进去了!

2007-11-09 22:51
yynn
Rank: 1
等 级:新手上路
帖 子:279
专家分:0
注 册:2005-11-4
得分:0 
还有就是new出来的字符“a”在data seg 里还是在堆里!

2007-11-09 23:34
csight
Rank: 1
等 级:新手上路
威 望:1
帖 子:293
专家分:0
注 册:2006-6-11
得分:0 
id=sid++;为什么不能放进构造函数?
堆;

头可断,发型不可乱;血可流,皮鞋不可不擦油;
2007-11-10 00:02
alushuai159
Rank: 1
等 级:新手上路
帖 子:4
专家分:1
注 册:2009-12-24
得分:0 
来看看..
2009-12-24 20:06



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-184687-1-1.html




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

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