sampleoverload.as

来自「《Flash AS3殿堂之路》光盘源码 学习ActionScript 3.0」· AS 代码 · 共 54 行

AS
54
字号
package org.kingda.book.basicoop
{
	import flash.display.Sprite;

	public class SampleOverload extends Sprite
	{
		public function SampleOverload() {
			overload();
			//输出:We got nothing! -_-b..
			overload(3);
			//输出:We got a number:3
			overload("www.kingda.org");
			//输出:We don't understand this object:www.kingda.org
			overload(12,"as3",new Object());
			//输出:We got an array:12,as3,[object Object]
		}
		
		private function overload(...args):*{
			if (args.length == 0) return reportDefault();
			if (args.length == 1) {
				if (typeof(args[0]) == "number") {
					return reportNumber(args[0]);
				} else {
					return reportErr(args[0]);
				}
			}
			if (args.length > 1) return reportArray(args);
		}
		
		private function overload():void {
			
		}
		
		private function reportDefault():Boolean {
			trace ("We got nothing! -_-b..");
			return false;
		}
		
		private function reportNumber(num:Number):Number {
			trace ("We got a number:"+ num);
			return num;
		}
		
		private function reportErr(obj:*):* {
			trace ("We don't understand this object:"+ obj);
			return obj;
		}
		private function reportArray(ary:Array):Array {
			trace ("We got an array:"+ ary);
			return ary;
		}
	}		
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?