Я пытаюсь получить доступ к свойству из метода в родительском классе, где это свойство инициализируется в классе ребенка, как так:Доступ к родительскому классу свойство устанавливается класс ребенка
abstract class Parent {
String description
String name
def printDescription() {
println "description: ${description}"
}
}
class Child extends Parent {
String description = "child description"
}
Child child = new Child(name: 'Mark')
child.printDescription() // prints "description: null"
Когда метод выполняется однако, description
объект null
. Мне нужно передать дочернему description
обратно в родительский конструктор. Каков наилучший способ сделать это при сохранении автогенерированных конструкторов карт Grails? Благодаря!
EDIT:
Добавление пустой конструктор на самом деле работает для того, что я ищу. Конструктор по-прежнему вызывается при использовании конструктора динамической карты Grails, например. Child child = new Child(name: 'Mark')
.
Child() {
this.description = "child description"
}
Не знаю о граале, но я думаю, вы не должны объявлять новое описание и инициализировать его в конструкторе вместо – realUser404
Да, я думаю, я не должен удивляться, но на самом деле работает в граале без дополнительной работы. Благодаря! – dpcasady