首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Eclipse开发 >

一道简单的java面试题解决方案

2012-01-24 
一道简单的java面试题1.下面代码运行的结果是()public class Ceshi{public String str “”public Ceshi

一道简单的java面试题
1.下面代码运行的结果是( )
public class Ceshi{
public String str = “”;
public Ceshi objCeshi;

public Ceshi(String str2){
this.str = str2;
}
public getString(String str3){
objCeshi = new Ceshi(str3);
}
public static void main(String[] args){
Ceshi obj = new Ceshi(“hello”);
Obj.getString(“word”);
System.out.println(obj.str);
}
}
A.hello
B.helloword
C.word
D.wordhello


本人菜鸟,有高手帮我解答下为什么吗?能详细点当然最好


[解决办法]
A
getString()创建了objCeshi,将word赋值给了str,可是这个str是对象objCeshi的,并不是obj的str。你可以把System.out.println(objCeshi.str);放到getString()或许你能明白点。
[解决办法]

Java code
public class Ceshi{    public String str = "";    public Ceshi objCeshi;//声明了一个实例未初始化    public Ceshi(String str2)    {        this.str = str2;    }    public void getString(String str3)    {        objCeshi = new Ceshi(str3);//在这里初始化    }    public static void main(String[] args)    {        Ceshi obj = new Ceshi("hello");        obj.getString("word");//在这里初始化objCeshi        System.out.println(obj.str);//这里的obj还是外层Ceshi的实例 由于str是public的所以输出时hello    }}
[解决办法]
Java code
System.out.println(obj.objCeshi.str); 

热点排行