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