タグ

ブックマーク / septieme-sens.blogspot.com (1)

  • 関数とメソッドの違い

    オブジェクト指向言語におけるメソッドを関数で実装できるだろうか? 最近のオブジェクト指向言語では,関数型言語の特徴であるファーストクラスオブジェクトとしての関数が提供されていることが多い.このような言語の場合、メソッドは関数なのだろうか?インスタンス変数に関数を代入すればそれが即ちメソッドなのだろうか?しかしことはそう単 純ではない.レシーバ (C++, Java, JavaScript における this) の扱いをどうするかという問題があるからである. JavaScript JavaScript ではまさにメソッドが関数として実装されている. o = { data: "hello", method: function () { alert(this.data); } }; o.method(); とすれば "hello" が表示される.それでは以下のように一旦関数を単離するとどうなるだ

  • 1