静的変数を使用する場合にコードを短縮するためにできるもう 1 つの方法は、静的インポートを使用することです (これは実際には Java の一部ですが、groovy に移行するまで見つけられませんでした)。
クラスの先頭で CurrencyType (潜在的に、定義したさまざまなタイプの通貨を保持する列挙型) の静的インポートを行う場合:
static import com.example.CurrencyType.*
コード内で、すべての参照の前に を付ける必要がなくなりました。次のCurrencyType
ようにするだけです。
Currency.findByCode(DOLLAR)
変更する必要がない場合は、Currency クラスにヘルパー メソッドを追加して取得することもできます。
Currency.groovy:
static import com.example.CurrencyType.*
...
static transients = ['dollar']
...
static Currency getDollar() {
Currency.findByCode(DOLLAR)
}
これによりCurrency.dollar
、他のコードで使用できるようになります。これらのクラスでは、静的インポートを使用して参照することもできますdollar
。
static import com.example.Currency.*
....
println dollar // gets the dollar from the db and prints it out