java 语言问题

java 语言问题

private void test(a a ){

a =new a();

}

//main方法里的代码a a = new a();

t.test(a);

你的代码我简单做了下修改只留下了重点的部分

你的问题如下:

在第三行开辟一个内存空间a =new a(); 这个是可以的。

为什么我定义 a a =new a();

时出错,和第九行的 a a =new a(); 有关系么。

为什么?

a =new a(); 和 a a =new a(); 有什么区别

a = new a();之所以可以,是因为你在给这个变量初始化因为你上边也定义了一个变量叫a

private void test(a a ){ 就是这个a 这里的代码相当于这样 a a ;

所以

private void test(a a ){

a =new a();

}

这段代码相当与这样

a a;

a = new a();

而a a = new a(); 之所以不行是因为这段代码是重新创建一个a类的对象而你的变量名a 和上边的a重名了所以不行

如果还不懂加我QQ 610580000

首页