Skip to content

Instantly share code, notes, and snippets.

interface Cat {
String mew()
}
class Zash implements Cat {
String mew(){ "雑種" }
}
class Nora implements Cat {
String mew(){ "野良" }
}
def scottish = [mew:{"すこてぃっしゅ"}] as Cat
@fumokmm
fumokmm / field_access.groovy
Created July 14, 2012 15:03
Groovyでクラスのフィールドアクセスいろいろ ref: http://qiita.com/items/d17efc6a70a0d9e2efbd
class A {
def foo
}
def a = new A(foo: 'Foo')
assert a.foo == 'Foo' // プロパティアクセス(暗黙的)
assert a.getFoo() == 'Foo' // プロパティアクセス(明示的)
assert a.foo == 'Foo' // フィールドアクセス
assert a['foo'] == 'Foo' // マップアクセス
assert a.getAt('foo') == 'Foo' // マップアクセス(メソッド)
@fumokmm
fumokmm / overrideInterfaceMethod.groovy
Created July 12, 2012 22:04
overriding interface method on Groovy
interface Cat {
String mew()
}
class Zash implements Cat {
String mew(){ "雑種" }
}
class Nora implements Cat {
String mew(){ "野良" }
}
def scottish = [mew:{"すこてぃっしゅ"}] as Cat
@fumokmm
fumokmm / README.md
Created July 9, 2012 20:54
overriding asType on String by Groovy
@fumokmm
fumokmm / executor_submit3.groovy
Created July 7, 2012 07:54 — forked from mike-neck/console.log
ExecutorServiceの拡張がうまくできん -> メソッド名のせいかな?
import java.util.concurrent.ExecutorService
import java.util.concurrent.BlockingQueue
import java.util.concurrent.LinkedBlockingQueue
import java.util.concurrent.Executors
import java.util.concurrent.Callable
def executor = Executors.newSingleThreadExecutor()
// Closure as Interfaceパターン!
def future = executor.submit( {
def list = []
@fumokmm
fumokmm / FactoryTest.java
Created July 3, 2012 21:55
Javaで型トークンを利用したファクトリクラス
package fumokmm.test.factory;
import java.util.*;
import org.junit.*;
import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.*;
public class FactoryTest {
static abstract class Alphabet {
@fumokmm
fumokmm / README.md
Created July 1, 2012 01:06
ポーカーをGroovyで解いてみた
@fumokmm
fumokmm / README.md
Created June 12, 2012 21:56
"先頭からn個のfizzになる数を取得する"をGroovyで遅延リストな感じで
@fumokmm
fumokmm / README.md
Created June 2, 2012 23:42
Implementation of 'unless statement' on Groovy & Clojure
@fumokmm
fumokmm / README.md
Created May 19, 2012 05:03
エラトステネスの篩を使ってClojureで素数を求める