AS3その4 インスタンス生成、メソッド呼び出し


packageとかはおいておいて、ひとまずインスタンス生成と、メソッド呼び出し。

メソッドといえども、functionで記述方法がちょっとだけ違うね。

デフォルト値みたいなのも引数で決定できる。

Adobeが出している、AS3プログラミングガイドの例を若干変えただけ。


package
{
	public class Greeter
	{
		public static var validName:Array = ["a", "b", "c"];
		public function greet(s:String = ""):String
		{
			var str:String;
			if(s == "")
			{
				s = "AAA";
			} else if(validNames(s))
			{
				s = "BBB";
			} else {
				s = "CCC";
			}
			return s;
		}
		
		public static function validNames(input:String = ""):Boolean
		{
			if(validName.indexOf(input) > -1)
			{
				return true;
			} else {
				return false;
			}
		}
		
		public static function greeterName():String {
			return "simple greeter";
		}
	}
}
package {
	import flash.display.Sprite;
	import flash.text.TextField;

	public class learningAs3 extends Sprite
	{
		public function learningAs3()
		{
			var t:TextField = new TextField();
			t.text = "Hello ActionScript3.";
			t.width = 300;
			t.height = 200;
			t.x = 50;
			t.y = 20;
			var g:Greeter = new Greeter();
			//インスタンスメソッド呼び出し
			var s:String = g.greet("aaa");
			t.appendText("\n");
			t.appendText(s);
			t.appendText("\n");
			//staticメソッド呼び出し
			t.appendText(Greeter.greeterName());
			addChild(t);
		}
	}
}