Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание

Статические члены System.Object

Статические члены System.Object

В завершение нашего обсуждения базового класса .NET, находящегося на вершине иерархии классов, следует отметить, что System.Object определяет два статических члена (Object.Equals() и Object.ReferenceEquals()), обеспечивающих проверку на равенство значений и ссылок соответственно. Рассмотрим следующий программный код.

static void Main(string[] args) {
 // Два объекта с идентичной конфигурацией.
 Person р3 = new Person("Fred", "Jones", "222-22-2222", 98);
 Person p4 = new Person("Fred", "Jones", "222-22-2222", 98);
 // Одинаковы ли состояния р3 и р4? ИСТИНА!
 Console.WriteLine("Одинаковы ли состояния: р3 и р4: {0} ", object.Equals(р3, р4));
 // Являются ли они одним объектом в памяти? ЛОЖЬ!
 Console.WriteLine ("Указывают ли р3 и р4 на один объект: {0} ", object.ReferenceEquals(р3, р4));
}

Исходный код. Проект ObjectMethods размещен в подкаталоге, соответствующем главе 3.

Оглавление книги


Генерация: 4.507. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз