■ Activator 클래스 : 객체 생성하기

----------------------------------------------------------------------------------------------------

namespace TestLibrary

{

    /// <summary>

    /// 테스트 클래스

    /// </summary>

    public class TestClass

    {

        //////////////////////////////////////////////////////////////////////////////////////////////////// Field

        ////////////////////////////////////////////////////////////////////////////////////////// Private

 

        #region Field

 

        /// <summary>

        /// 명칭

        /// </summary>

        private string name;

 

        #endregion

 

        //////////////////////////////////////////////////////////////////////////////////////////////////// Property

        ////////////////////////////////////////////////////////////////////////////////////////// Public

 

        #region 명칭 - Name

 

        /// <summary>

        /// 명칭

        /// </summary>

        public string Name

        {

            get

            {

                return this.name;

            }

            set

            {

                this.name = value;

            }

        }

 

        #endregion

 

        //////////////////////////////////////////////////////////////////////////////////////////////////// Constructor

        ////////////////////////////////////////////////////////////////////////////////////////// Public

 

        #region 생성자 - TestClass()

 

        /// <summary>

        /// 생성자

        /// </summary>

        public TestClass()

        {

        }

 

        #endregion

 

        #region 생성자 - TestClass(name)

 

        /// <summary>

        /// 생성자

        /// </summary>

        /// <param name="name">명칭</param>

        public TestClass(string name)

        {

            this.name = name;

        }

 

        #endregion

    }

}

 

...

 

using System;

using System.Reflection;

 

Assembly assembly = Assembly.Load("TestLibrary");

 

Type type = assembly.GetType("TestLibrary.TestClass");

 

// 인자가 있는 생성자 사용시

TestLibrary.TestClass testClass = Activator.CreateInstance(type, new object[] { "test" }) as TestLibrary.TestClass; 

 

// 인자 없는 생성자 사용시

TestLibrary.TestClass testClass = Activator.CreateInstance(type) as TestLibrary.TestClass;

----------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker

댓글을 달아 주세요