2009-10-15から1日間の記事一覧

interfaceは細かく軽く作るべきなんだろか

public interface Foo { public String foo(); } public interface Bar { public String bar(); } public interface Baz { public String baz(); } public class FooBar implements Foo,Bar { //... } public class FooBaz implements Foo,Baz { //... } 極…

JavaでGenericsを使ってStructual Subtypingできたよー

Structual Subtypingは、OCamlとかScalaとかにもあるらしい、アレです。 方針 一つのインタフェースに一つのメソッドが定義される。 インタフェースの継承は禁止。 利用側(今回はHogeクラスのhogeメソッド)では、必要なメソッドを持つ総称型として引数を受…

Javaのオブジェクトはメッセージではない(追記:?)

このコードが通らないので。 import java.lang.reflect.*; interface A { public String a(); } class A2 { public String a(){return "A2";} } public class Fuga { public static void main(String[] args) throws Throwable{ final A2 a2 = new A2(); Cla…