교재 208쪽에서 인터페이스가 없다면 별도의 불린형 필드를 둬서 개발자가 명시해야 한다고 말씀하셔서
직접 구현해보았는데... 오류가 발생했습니다ㅠ
처리되지 않은 예외: System.InvalidCastException: 'ConsoleApp50.Computer' 형식 개체를 'ConsoleApp50.Person' 형식으로 캐스팅할 수 없습니다.
모든 개체의 부모는 object로 알고 있는데 캐스팅 불가라고 하니까
어떻게 수정해야 될 지 모르겠습니다.... 
namespace ConsoleApp50
{  
    class Computer
    {
       public bool IsOverloaded = false;
    } 
    class Person 
    {
        string name;
        public bool IsOverloaded = true;
        public Person(string name)
        {
            this.name = name;
        }
        public override string ToString()
        {
            return "Person: " + this.name;
        }
    }
    class Program
    {
        private static void DisplayObject(object obj)
        {         
            if(((Computer)obj).IsOverloaded)
            {
                
            }
            if (((Person)obj).IsOverloaded)
            {                
                Console.WriteLine(obj.ToString());
            }
        }
        static void Main(string[] args)
        {
            DisplayObject(new Computer());
            DisplayObject(new Person("홍길동"));
        }
    }
}
타인의 코드를 보면 이해가 되는데 막상 직접 짜려고 하면 어렵네요... 
        
        
                    
                    
                    
                    
                    
    
                    
                    
                    
                    
                    
                
                    [최초 등록일: ]
                    [최종 수정일: 1/15/2021]