ゲンゾウ用ポストイット

Java、Groovy、Linux関連の備忘録

既存のクラスにプロパティを追加

既存のクラスにプロパティを追加するには、metaClass.defineメソッドを使用すればよい。

#!/usr/bin/env groovy
Object.metaClass.define{
    testprop = null
}

def x = new Object()
def y = new Object()

x.testprop = "aaa"
assert x.testprop == "aaa"
y.testprop = "bbb"

assert x.testprop == "aaa"
assert y.testprop == "bbb"

def z = new Object(testprop:"ccc")
assert z.testprop == "ccc"


java.io.Fileクラスにプロパティを追加するにはどうしたらよいか分からなかったのでメモ。

広告を非表示にする