*クラスとハッシュマップの関係 [#c31b18b2] クラスをクラスを使わずに、 少ない手数でハッシュマップとメソッドに置き換えることは可能である。 つまり、クラスの概念を持つ言語をクラスの概念を持たない言語に置き換え可能である。 *ルール1 クラスはHashMapに置き換えることができる。 [#c8dd0d27] 例 クラス class HogeClass{ } HogeClass hogeClass = new Hoge(); は HashMap mapHoge = new HashMap(); で置き換えられる *ルール2 クラス内のメソッドは自信を引数に持つメソッドに置き換えることができる。 [#zd2daa82] 機械的に置き換えたほうが手数が少ないため、クラス内のメソッドは必ず、第一引数に自信のthisを持たせるようにする。 なぜ第一引数にthisを用いるかというと、クラス内のメソッドはthisが使えるからだ、 *ルール3 クラス内のメソッド名はクラス名+メソッド名のメソッド名にする [#wc8496e2] ルール2とルール3は、つまりはこういうことだ。 HogeClass { void fooMetod (String bar){ }; } があったとすると、機械的に下記のように置き換わる。 void hogeClass_fooMethod(HashMap thisMap,String bar){ //メソッド内のthisはthisMapに置き換わる } *ルール4 自信のクラスに自信のインスタンスを混ぜてはいけない。 [#dc6e3bc1] ちなみに、HashMap内に自信のインスタンスを設定するのは、循環参照となり、メモリの自動開放アルゴリズムが働かないとおもうので やめておいたほうが良い。