如何将不覆盖作为Program接口(program.class)的抽象方法的getPlan方法的程序链接到程序实例化?

时间:2016-05-19 13:16:49

标签: java apache-flink flink-streaming

我正在查看org.apache.flink.client.program中的PackagedProgram.java 并在以下构造函数中:

PackagedProgram(File jarFile, List<URL> classpaths, String entryPointClassName, String... args)

有一些我无法理解的代码;请看下面:

this.mainClass = loadMainClass(entryPointClassName, userCodeClassLoader);   

if (Program.class.isAssignableFrom(this.mainClass)) {
   Program prg = null;

   try {
      prg = InstantiationUtil.instantiate(this.mainClass.asSubclass(Program.class), Program.class);
   }

如何this.mainClass不覆盖getPlan方法,它是Program接口(program.class)的抽象方法,并且只有静态main方法可以实例化为Program?

0 个答案:

没有答案