当前位置: 代码迷 >> J2SE >> 构造函数,该怎么处理
  详细解决方案

构造函数,该怎么处理

热度:21   发布时间:2016-04-23 21:47:59.0
构造函数
public class Test12{
String name = "Tom";
public Test12(String name){
name = name;
}
public static void main(String[] args) {
Test12 t = new Test12("Jack");
System.out.println(t.name);
}
}

这道题的输出为什么不是Jack?谁能讲一下原理?

------解决方案--------------------
应该写成this.name = name;
变量就近原则,先找作用域里的变量值,如果找不到才会到类属性里找。你这里name=name;两个name都是构造方法的参数String name,等于是变量name自己赋值给自己。
this.name就会指向属性name了

------解决方案--------------------

没用this关键字呀
  相关解决方案