有这么一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());
}
}
请问会输出什么结果,为什么是这样的结果呢?

解决方案 »

  1.   

    不能编译
    ClassB的构造函数写法有误如果正确,则应输出
    hello
    world
      

  2.   

    果然,classB的构造函数这样写就正确了
    public classB(){
    objA = new ClassA("hello");
    }
      

  3.   


    一眼看支一片错!
    1)public String getObj()
          {
             return objA;  //objA==String ??
           }2)public ClassA  //class关键字呢?难道这默认是类?那我真是长见识了3)不过流程我看懂了,结果是一楼所说:)
      如果不懂楼主该去进修