親クラスで定義されている場合、子クラスの変数にデフォルト値を割り当てることができるかどうか疑問に思っていました。
例として、キャンプ場の環境を取り上げます (これ以上良いものは思いつきませんでした)。
宿泊クラス(親)があります。宿泊施設は、テントサイト、トレーラーハウス、シャレーなどのいずれかです。テントサイトのみパティオがありません(デフォルト)。もう1つは、ある場合とない場合があり、テントサイトにはない特別な仕様(皿、カバーなど)もあります。
今...私は怠け者で、変数パティオ(ブール値)を宿泊施設クラスに入れ、テントクラスパティオでデフォルトでfalseを宣言することを好みます。または、すべての子クラスにパティオ変数を作成する必要がありますか?
class Lodging{
String description
int capacity
Boolean patio
}
class Tent extends Lodging{
static mapping = {
patio defaultValue: false
}
}
新しいテント インスタンスを作成すると、マッピング ルールが適用されますか? または、変数を認識しないというエラーが表示されますか?
私は何も試していませんが、頭をよぎり、grails doc (またはここ) から答えを得ることができませんでした。私の説明と質問が理解できることを願っています:)