获取Null值在logcat中

时间:2017-07-18 16:52:13

标签: java android constructor

我正处于学习阶段。我不知道为什么我在logcat中获得Null值。当getN()被称为第一个构造函数时,它显示结果但在第二个构造函数中调用时,它显示Null值。拜托,任何人都可以向我解释这个问题,或者给我指一篇文章,以便我详细阅读。

MainActivity.class

public class MainActivity extends AppCompatActivity {
String G = "HELLo";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    MyActivity s = new MyActivity(G);
    MyActivity my = new MyActivity();
}
}

MyActivity.class

public class MyActivity {
String N;

public MyActivity(String g) {
    this.N = g;
}

public MyActivity() {
    getN();
}


public void getN(){
    Log.e("WOFO",N);
}
}

1 个答案:

答案 0 :(得分:0)

当您致电MyActivity s = new MyActivity(G);时,您使用N初始化this.N = g;,但在第二次调用时,this.N = g;未初始化,因为您正在调用该对象的新实例而不是和第一个一样。