interface
日曜日, 8月 8th, 2010Interfaceって何ぞや?
って思ってましたよ。
実装しなければいけないもんを枠として備えている、って感じでしょうか?
1 2 3 4 5 6 7 | package { public interface InterfaceTest { function sampleTest(str:String = ""):String; } } |
というインターフェイスがあって、これを実装(implement)するとなった場合
1 2 3 4 5 6 7 8 9 10 11 12 | package { public class TestClass implements InterfaceTest { public function TestClass(str:String="") {} public function sampleTest(str:String = ""):String { return str + "\.unko"; } } } |
となるわけで、このTestClassにsampleTest()がなければ、エラーになる。
インターフェイスに、もし、
1 | public function sample02(str:String=""):String |
があったとすれば、TestClassにはその記述がないので、エラーになる。
ほほう。
「絶対実装したいメソッドやらを入れなくてはいけない」場合、「入れ忘れ防止」になるわけですねー。
ほほほう。
上のインターフェイス・クラスを使って
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | package { import flash.display.Sprite; import flash.text.TextField; public class Main extends Sprite { public function Main():void { init(); } private function init():void { var unko:TestClass = new TestClass(); var tf:TextField = new TextField(); tf.text = unko.sampleTest("unko"); addChild(tf); } } } |
をつくってやると・・・
[study] – interface – wonderfl build flash online
こうなるわけですね。
ほうほう。
簡単ではありますが、インターフェイスってなんぞ?
のお話。
ちょっと理解しましたよ。

