본문 바로가기
C# 공부

dynamic

by Dev_Hugh 2021. 8. 26.
728x90
반응형

Study about dynamic

  • 컴파일러가 dynamic 키워드를 만나면 형식 검사를 실행때로 미룸
class Duck
{
    public void Walk()
    {
        Console.WriteLine(this.GetType() + "Walk");
    }
    public void Swim()
    {
        Console.WriteLine(this.GetType() + "Swim");
    }
    public void Quack()
    {
        Console.WriteLine(this.GetType() + "Quack");
    }
}
class Mallard : Duck {}
class Robot
{
   public void Walk()
    {
        Console.WriteLine("Robot.Walk");
    }
    public void Swim()
    {
        Console.WriteLine("Robot.Swim");
    }
    public void Quack()
    {
        Console.WriteLine("Robot.Quack");
    }
}
static void Main()
{
    dynamic[] arr = new dynamic[] {new Duck(), new Mallard(), new Robot()};
    foreach(dynamic duck in arr)
    {
        Console.WriteLine(duck.GetType());
        duck.Walk();
        duck.Swim();
        duck.Quack();
        Console.WriteLine();
    }
}
  • duck typing 철학 프로그래밍에 적용하는 방법
  • duck typing 따로 찾아서 공부하기
728x90
반응형

'C# 공부' 카테고리의 다른 글

LINQ  (0) 2021.08.26
lambda  (0) 2021.08.26
property  (0) 2021.08.25
generic  (0) 2021.08.25
exception  (0) 2021.08.25