Esempio n. 1
0
        public void Action()
        {
            // ToString - строковое представление объекта
            double a = 12.234;

            Console.WriteLine(a.ToString());

            // ToString
            ObjClockOwner owner = new ObjClockOwner();

            Console.Write("Введите имя или нажмите Enter: ");
            owner.Name = Console.ReadLine();
            // Вывелет название класса ObjClockOwner или введеное имя
            Console.WriteLine(owner.ToString());

            ObjClock clock = new ObjClock {
                Hours = 23, Minutes = 9, Seconds = 11
            };

            // Выведет 23:9:11, т.к. метод переопределен
            Console.WriteLine(clock.ToString());

            // GetHashCode - возвращает числовое значение. По нему можно сравнивать объекты
            Console.WriteLine("Хеш-код 1 owner'a: " + owner.GetHashCode());
            ObjClockOwner owner1 = new ObjClockOwner();

            owner1.Name = "Lex";
            Console.WriteLine("Хеш-код 2 owner'a: " + owner1.GetHashCode());

            // GetType - получение типа объекта
            Console.WriteLine(owner.GetType());
            // Сравниваем с помощью typeof
            object owner2 = new ObjClockOwner {
                Name = "Sten"
            };

            if (owner2.GetType() == typeof(ObjClockOwner))
            {
                Console.WriteLine("Это класс ObjClockOwner");
            }

            // Equals - сравниваем два объекта на равенство
            ObjClockOwner owner4 = new ObjClockOwner {
                Name = "Pedro"
            };
            ObjClockOwner owner5 = new ObjClockOwner {
                Name = "Pablo"
            };
            ObjClockOwner owner6 = new ObjClockOwner {
                Name = "Pedro"
            };
            // Сравнение owner4 с owner5
            bool ow4_ow5 = owner4.Equals(owner5);

            Console.WriteLine(ow4_ow5); // false
            // Сравнение owner4 с owner6
            bool ow4_ow6 = owner4.Equals(owner6);

            Console.WriteLine(ow4_ow6); // true
        }
Esempio n. 2
0
        // Переопределяем метод Equals
        public override bool Equals(object obj)
        {
            if (obj.GetType() != this.GetType())
            {
                return(false);
            }

            ObjClockOwner owner3 = (ObjClockOwner)obj;

            return(this.Name == owner3.Name);
        }