2009년 9월 23일 수요일

ActionScript Reflection (Dynamic Instantiation)

package test
{
    public class ExampleClass
    {
        public static function get instance():Class
        {
            return ExampleClass;
        }
       
        public function getMessage():String {
            return "message";
        }
    }
}

우선 동적으로 객체를 생성할 수 있도록 위와 같이 instance라는 함수를 만들어 둔다.

private function getMessage():void {
    var instance:Object =
              flash.utils.getDefinitionByName("test.ExampleClass");

    var exam:ExampleClass = new instance() as ExampleClass;
    Alert.show(exam.getMessage());
}

이렇게 클래스명을 이용해서 객체를 생성해서, 함수를 호출하면 Alert에 "message"라는 문자열이 보이게 된다.

댓글 없음:

댓글 쓰기