1
我想将子类中的某些操作映射到其超类,但我无法弄清楚。下面的示例...将grails操作映射到父控制器
abstract class A {
abstract def foo()
def aAction1 = {
// do something
render(view: '/someView')
}
def aAction2 = {
SomeObject someObject ->
// do something
render(view: '/someView2')
}
}
class B extents A {
def foo() { return "Hello World" }
# map to parent action
# works fine
def jump = super.&aAction1
# doesnt work ... Why? and can I make it work?
def swim = { SomeObject someObject ->
super.aAction2(someObject)
}
}
对此问题的任何建议?谢谢。
它是如何工作的?除此之外,除非您在子类中重新定义aAction1/2,否则不需要指定super。你继承了定义。 – codelark
我得到了实例化异常。 – ekawas
另外,如果我删除游泳,并使其陷入aAction2,我会在sun.reflect.InstantiationExceptionConstructorAccessorImpl.newInstance(InstantiationExceptionConstructorAccessorImpl.java:30)异常'java.lang.InstantiationException \t' – ekawas