Example #1
0
        static void Main(string[] args)
        {
            WbDate d1 = new WbDate()
            {
                Year  = 2020,
                Month = 4,
                Day   = 29
            };

            WbDate d2 = d1;

            WbDate d3 = new WbDate()
            {
                Year  = 2020,
                Month = 4,
                Day   = 29
            };

            //============결과 검증 ================
            Console.WriteLine(d1.Equals(d2));                   //True
            Console.WriteLine(object.ReferenceEquals(d1, d2));  //True

            //부모로부터 물려받은 Equals는 RE의 성질을 갖는다.
            //따라서 사용하려면 재정의를 해야 한다.
            Console.WriteLine(d1.Equals(d3));                   //True
            Console.WriteLine(object.ReferenceEquals(d1, d3));  //False

            //toString
            //객체명을 출력하면 암시적으로 ToString()을 호출한다.
            //부모로부터 물려받은ToString() : 자신의 네임스페이스.클래스명
            Console.WriteLine(d1.ToString());
            Console.WriteLine(d1);
        }
Example #2
0
        public override bool Equals(object obj)
        {
            //WbDate temp = (WbDAte)obj;
            //obj가 가지고 있는 객체가 WbDate객체냐?
            WbDate temp = obj as WbDate;

            if (temp == null)
            {
                return(false);
            }

            if (Year == temp.Year && Month == temp.Month && Day == temp.Day)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }