非静态方法调用而不在onCreate()中创建对象

时间:2014-07-15 03:33:14

标签: java android oop static oncreate

我听说在java实例(非静态)方法中处理对象并调用非静态方法需要对实例进行引用。 但是在这个Java(Android)代码中,调用非静态方法而不在onCreate()方法中创建对象并且没有错误。我想知道为什么会这样?

public class MainActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    newGame();


}


private void newGame(){

    // code here

}

}

对不起我对java的了解不足

2 个答案:

答案 0 :(得分:1)

这是因为newGame()方法是类/活动名称MainActivity的成员方法。根据OOP概念,如果要调用同一类的成员方法,则不需要类对象。它与成员变量相同。这就是你想要的。

答案 1 :(得分:0)

有一个例子。 Java对象是使用构造函数创建的,因为MainActivity没有包含一个默认的Java对象。看起来像,

public MainActivity() {
  super();
}

然后在该实例上调用onCreate()