我如何在Java中動態創建一個類,如果我現在只有父類在運行時通過反射?在Java中是否有與Python的`type(name,bases,dict)`類似的東西?
// I only know what ParentClass is at runtime
// but I know that ParentClass implements SomeInterface.
public class MyClass extends ParentClass implements SomeInterface {
// I know the method I want to override,
// and that ParentClass has a no-argument constructor.
@Override
public int method(int arg) {
return 42 * arg;
}
}
例如,在Python中你可以使用
MyClass = type("MyClass", (ParentClass,), {
'method': lambda self, arg: 42 * arg
})
# or even easier
class MyClass(ParentClass):
def name(self, arg):
return 42 * arg
那麼,有沒有一個相當於Python的type(name, bases, dict)
在Java中?
爲什麼你需要在運行時做到這一點?看看'Proxy'。 – 2014-11-04 05:13:01