任何人都可以告诉我是否有一种方法,如果有的话如何使 Activity 基于 if then
或 switch
语句实现整个类,本质上是让类本身成为一个变量? [我想根据从另一个选项卡中的 OnItemClicked 事件接收到的值在选项卡中显示特定的列表类( Activity )]。
让您了解我可能正在寻找的内容:
if(position == 1){//run class 1}
if(position == 2){//run class 2}
谢谢。
最佳答案
您在寻找 polymorphism ?
interface MyService {
void doWork();
}
class CoolMyService {
void doWork() { /* do something */ }
}
class AnotherMyService {
void doWork() { /* do something else */ }
}
MyService service;
if(position == 1){ service = new CoolMyService(); }
if(position == 2){ service = new AnotherMyService() }
service.doWork();
我不知道您的列表中有多少项,但您可以调整上面的示例以根据需要动态加载对象。请记住,您可以使用多态性和定义的 interface以确保完整性。然后将实际工作落实到具体实现中。
关于java - 使类可变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5730181/