如何使用相同的变量名来实例化不同类的对象

时间:2016-04-19 11:23:54

标签: java

我正在尝试创建一个具有相同名称的引用变量,并根据环境将类对象分配给它们。请查看下面的示例代码。

class EnvA{

public void create(){
.....
   }
}
class EnvB{

public void create(){
.....
  }
}

class main{
EnvA obj = null;
EnvB obj= null;
public static void main(string[] args)
    if(itisEnvB)
        obj  = new EnvA();
     else
         obj  = new EnvB();
    //create method should be called depending on which environment is set
    obj.create();
}

在上面的代码中,我需要obj分配给EnvAEnvB的对象引用。因为我将在我的整个“班主”中只使用obj

1 个答案:

答案 0 :(得分:6)

您应该定义一个具有httpcfg -add -cert my_certificate.cer -pvk my_privatekey.pvk -port 443方法的界面,create()EnvA都应该实现它。

然后EnvB的类型将按该接口的类型。

obj

请注意,为了在public interface Createable { public void create(); } class EnvA implements Createable {...} class EnvB implements Createable {...} ... Createable obj = null; if(itisEnvB) { obj = new EnvA (); } else { obj = new EnvB (); } obj.create(); 方法中引用obj,它应该是您的类的静态成员或main方法的局部变量。