将代码拆分为两个类

时间:2016-10-30 17:46:44

标签: android

我有一个包含大量代码的课程。我想把一些方法放到另一个类中,但是从我已经拥有的类中加载它们。我也不想改变内容。我试过了

的Class1:

public class Class1 extends Activity {
    @Override
    protected void onCreate (Bundle savedInstanceState) {
        super.onCreate(savedInstanceState;
        Intent intent = new Intent (this, Class2.class);
        startActivity(intent);
    }
}

等级2:

public class Class2 extends Class1 {
    @Override
    protected void onCreate (Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        method2();
    }
}
public void method2 {
    Log.e("Error", "Wut?")
}

当我运行该代码时,应用程序只是一遍又一遍地显示错误消息。应用程序可能一遍又一遍地运行“method2”方法......我只想运行“method2”一次。我不希望代码在同一个文件中,因为会有很多代码......

2 个答案:

答案 0 :(得分:1)

您所要做的就是在对象类中调用class2。记住那是一个java类。叫它!

Class2 newClass = new Class2();
newClass. method2();

class2不是一个活动,只是一个拥有所有方法的类..它不会延伸到任何东西!

答案 1 :(得分:0)

正如我认为你的方法没有任何意义,这是一种解决方法。

public class Class1 extends Activity {
@Override
protected void onCreate (Bundle savedInstanceState) {
    super.onCreate(savedInstanceState;
    if(!this instanceof Class2)
    {
          Intent intent = new Intent (this, Class2.class);
          startActivity(intent);
    }
}
}