我有两个项目,一个 SourceProject 和一个 TestProject。在源项目中,我有以下课程:
public class MyActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.i("", "normal mode");
}
}
例如,在我的测试项目中,我想更改/覆盖日志消息。当然,我可以执行以下操作,只需将新类放在相同的包路径下,然后将类更改如下:
public class MyActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.i("", "test mode");
}
}
但是假设我在我的班级中有更多的功能并且想使用这个功能(在我的测试班中也是如此)。我不能仅仅扩展我的 SourceProject-Class “MyActivity”,因为它的名称相同。但是,如果我将名称更改为“MyActivityX extends MyActivity”,它显然不会被编译到应用程序中。
有没有人有解决方案,不需要我将完整的源类复制到测试项目并在那里修改?