使一个方法对于同一类的不同版本是通用的

时间:2016-10-15 02:50:12

标签: java

我正在从XSD生成类。对于XSD中的每个修订版,将生成一个具有相同名称但在不同包下的新类。如果“Foo”是类,则类名将为: model.v1.Foo model.v2.Foo < / em>等每个修订版。

无论类的版本如何,一些操作都很常见。有没有办法创建一个通用的方法,可以占用任何版本的 Foo

public static String doOperation(Foo foo){
    //Do some operation
}

DoOperation 方法需要适用于所有版本。

1 个答案:

答案 0 :(得分:1)

一种可能性是创建一个界面,如:

public interface FooIF {

    public default String doOperation(Foo foo){

        System.out.println("doOperation executed");

        return null;
    }
}

Foo实现它:

public class Foo implements FooIF{

    public Foo() {

    }

    public static void main( String[] args) {

        Foo f = new Foo();
        f.doOperation(null);
    }
}