This class is the root of all .NET types, including value types and reference types. Some CLR languages such as C# do not require a type to inherit from Object explicitly. If no base type is listed in a class declaration, it is assumed that the type is to inherit from Object. Therefore, all types derive from it implicitly and can use any of its methods.

Use the GetType() method to obtain a description of your object’s internal metadata as a Type object. Use the ToString() method to get a String that represents your object. By default, this is the fully qualified type name of your object, but most classes override this method to provide something more useful, such as a string representation of the object’s content. For example, System.Drawing.Point.ToString() might return (10, 5).

The MemberwiseClone() method returns a new object of the same type that is a member-by-member duplicate. This object is called a shallow copy because any subobjects are not copied. Instead, the references are duplicated, meaning that both the original and cloned type refer to the same subobjects. MemberwiseClone() is protected, so it can only be called from methods of your derived object. Usually, you will implement the ICloneable interface for your objects and call MemberwiseClone() from a customized ICloneable.Clone() method.

Use the Equals() method to test for reference equality. Derived value-type classes override this method to provide value equality (which returns true for identical ...

Get C# in a Nutshell now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.