class  A
{
    private int  x=3;
    public static void main(String [] args)
    {
          new  A().func(new A());
    }
    public void func(A a)
    {
         System.out.println(a.x);
    }
}当我看这个程序的时候,不是很懂new  A().func(new A());这句是怎么执行的?感谢各位大虾,帮忙啊!!这个问题,从中反应出我前面的哪个问题还没有搞清楚呢?谢谢!

解决方案 »

  1.   

    new  A().func(new A()); 相当于
    A a = new A();
    a.func(new A()); 
      

  2.   

    func(A a)中参数要求是A对象.
      

  3.   

    func是类A中的一个方法,功能是打印输出对象a的参数x
    方法声明public void func(A a)的括号中的"A a"就是将类A的一个对象a传入方法再看main方法
    new A()实例化一个类A的对象
    .func()实例化后的对象调用func方法
    func(new A())传入方法的参数是又实例化类A的一个对象额..不知道讲清楚了伐..
    我java也不怎么好..