Базовый класс для всех сущностей в c#. От него неявно наследуется все.
Методы в классе Object
.
Equals(Object) | Определяет, равен ли заданный объект текущему объекту. |
---|---|
Equals(Object, Object) | Определяет, следует ли считать равными указанные экземпляры объектов. |
Finalize() | Позволяет объекту попытаться освободить ресурсы и выполнить другие операции по очистке перед тем, как объект будет утилизирован сборщиком мусора. |
GetHashCode() | Служит хэш-функцией по умолчанию. |
GetType() | Возвращает объект Type для текущего экземпляра. |
MemberwiseClone() | Создает неполную копию текущего объекта Object. |
ReferenceEquals(Object, Object) | Определяет, совпадают ли указанные экземпляры Object. |
ToString() | Возвращает строковое представление текущего объекта. |
Важные нюансы:
MemberwiseClone()
осуществляет неполное копирование - то есть копирование значимых типов. Если же класс фигуры содержал бы объекты ссылочных типов, то оба объекта после клонирования содержали бы ссылку на один и тот же ссылочный объект. Для глубинного клонирования с учетом ссылочных типов используется интерфейс ICloneable
, который позволяет создать экземпляр копию класса, поля которого в свою очередь заполнить не только копиями значимых типов, но и созданием экземпляров ссылочных типов.