728x90

AS 연산자

형변환이 가능하면 형변환을 수행하고, 그렇지 않으면 null 값을 대입하는 연산자

형변환이 가능한 경우에만 케스팅 연산자로 대입

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            Comoputer Comoputer = new Comoputer();
            Mouse tistory = new Mouse();

            tistory = Comoputer as Mouse;

            if (tistory == null)
                Console.WriteLine("형변환 불가능!"); // 값
            else
                Console.WriteLine("형변환 가능!");
        }

        class Comoputer
        {
            string _name = "Comoputer";

            public void NamePrint()
            {
                Console.WriteLine(_name);
            }
        }

        class Mouse : Comoputer
        {
            String _title = "Comoputer:Tistory";

            public void TitlePrint()
            {
                Console.WriteLine(_title);
            }
        }
    }
}

 

IS 연산자

형변환이 가능한 여부를 불린형으로 결과값을 반환

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            Computer Computer = new Computer();

            if (Computer is Mouse)
            {
                Console.WriteLine("형변환 불가능!");
            }
            else
            {
                Console.WriteLine("형변환 가능!");
                Mouse tistory = (Mouse)Computer;
            }
        }

        class Computer
        {
            string _name = "Computer";

            public void NamePrint()
            {
                Console.WriteLine(_name);
            }
        }

        class Mouse : Computer
        {
            String _title = "Computer:Tistory";

            public void TitlePrint()
            {
                Console.WriteLine(_title);
            }
        }
    }
}

 

 

 

728x90

+ Recent posts