getter, setterメソッドは使うべきか?
クラスのプロパティーに直接アクセスすることはあまり好ましく無いようなので、
メソッドを解してプロパティーを操作するのが一般的なようです。
ASではその際getter, setterというものが用意されているのですが、
僕の場合普通のメソッドでプロパティーにアクセスした方がしっくりくるのです。
getter, setterメソッドを使ったクラス
class TestClass { private var test:String; public function get teststr():String { return test; } public function set teststr(str:String):Void { test = str; } }
プロパティーを参照する場合
var ctest:TestClass = new TestClass(); ctest.teststr = "Yes!"; trace(ctest.teststr);
まるでメソッドでないかのように参照できるみたいです。
でもプロパティーは1つなのに名前の違う同一人物が存在しているようで、
違和感を感じ、Eclipseの場合だと、メソッドの一覧に載らないので効率も悪いです。
でもせっかくこんな機能があるんだから、使った方がいいのだろうか?(処理速度とかも変るのか?)
普通のメソッドだけ使ったクラス
class TestClass { private var test:String; public function getTeststr():String { return test; } public function setTeststr(str:String):Void { test = str; } }
プロパティーを参照する場合
var ctest:TestClass = new TestClass(); ctest.setTeststr("Yes!"); trace(ctest.getTeststr());
あまりに普通。
僕としては、しっくり。
独学で突っ走ってきたので、何が常識で何が非常識なのかを知らないところが
僕の悪い所なのではと思ってたりします。