有这么一2个类:
//类a
public ClassA
{
private String strTemp;
public ClassA(String str)
{
strTemp = str;
} public void setStr(String str)
{
strTemp = str;
} public String getStr()
{
return strTemp;
}
}
//类b
public ClassB
{
private ClassA objA; public ClassB
{
objA = new ClassA("hello");
} public String getObj()
{
return objA;
}
}//主函数;
public class Main {
public static void main(String[] args)
{
ClassB b = new ClassB();
ClassA a = b.getObj();
System.out.println(a.getStr());
a.setStr("world");
System.out.println(b.getObj().getStr());
}
}
请问会输出什么结果,为什么是这样的结果呢?
//类a
public ClassA
{
private String strTemp;
public ClassA(String str)
{
strTemp = str;
} public void setStr(String str)
{
strTemp = str;
} public String getStr()
{
return strTemp;
}
}
//类b
public ClassB
{
private ClassA objA; public ClassB
{
objA = new ClassA("hello");
} public String getObj()
{
return objA;
}
}//主函数;
public class Main {
public static void main(String[] args)
{
ClassB b = new ClassB();
ClassA a = b.getObj();
System.out.println(a.getStr());
a.setStr("world");
System.out.println(b.getObj().getStr());
}
}
请问会输出什么结果,为什么是这样的结果呢?
ClassB的构造函数写法有误如果正确,则应输出
hello
world
public classB(){
objA = new ClassA("hello");
}
一眼看支一片错!
1)public String getObj()
{
return objA; //objA==String ??
}2)public ClassA //class关键字呢?难道这默认是类?那我真是长见识了3)不过流程我看懂了,结果是一楼所说:)
如果不懂楼主该去进修