Groovy勉強中

 メモ用に書き連ねる予定。ちなみに本とか持ってなく、Webの情報と自分で実行した結果をメモる感じなのでデタラメな事書いてる可能性大(;´Д`)
 間違ってたら指摘してもらえると嬉しいです。もちろん自分でも間違いを見つけたら修正していきます。

クラスの定義

class Hoge {
	
}

中括弧は必須のもよう

変数の宣言

def hoge

defにて宣言。「;(セミコロン)」はあっても無くてもよい模様。ただし下記はエラー(NetBeansだとリアルタイムで教えてくれる)

def hoge def hogehoge //変数を2つ宣言したつもりw

この場合下記のようにすればおk

def hoge; def hogehoge //セミコロンにて区切る

もしくは

def hoge,hogehoge //カンマにて区切る

標準出力

println "hoge"

初期化してない変数に対するメソッド呼び出し

def name
println name.getClass()

上記の出力結果

class org.codehaus.groovy.runtime.NullObject

どうやらNullObjectが自動的に割り当てられるもよう。なのでNullObjectが持つメソッドは実行可能なようです。ただし、下記のようにNullObjectクラスに存在しないメソッドを呼び出すともちろん「んなメソッド実行できねーYO!」と怒られます

def name
println name.invoke() //エラー