一个关于 java面向对象的问题!

[复制链接]
查看11 | 回复1 | 2011-3-23 01:08:33 | 显示全部楼层 |阅读模式
public class Text{
Text2text2=null;
public static voidmain(String[] args){

public Text(){
text2=new Text2();
}

class Text2
{ public Text2(){
}
}
我想问的是 上面 那个 “Text2text2=null;”和下面的 “text2=new Text2();”这两段怎么理解?
我是这样理解的不知道对不对,先定义一个text2对象但它还没有内存,就像在现实世界中一样 只是给一个事物起了一个名字叫text2但它还不存在可是加null是什么意思呢? “text2=new Text2();” 这句话是给它分配内存了,它已经存在了。
我这样理解对么?麻烦哪个高手或老师在帮我解释一下。谢谢您啦,住您身体健康。
回复

使用道具 举报

千问 | 2011-3-23 01:08:33 | 显示全部楼层
<pre id=\"best-answer-content\" class=\"reply-text mb10\">你的理解基本上是正确的。
Text2text2=null; 这个只是说明了一个有text2这样一个引用,是指向Text2类型的,
类似于说我要找一个人
text2 = new Text2();这里是确实在内存里面分配。指定这个就是我要找的张三人了。

null在java里面可以理解为不知道的,未知的,(坦白讲,就是没有给分配内存)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行