The Root of All Classes: Object

All VB.NET classes, of any type, are treated as if they ultimately derive from a single class, Object. Object is the (root) base class for all other classes.

A base class is the “parent” of a derived class. A derived class can be the base to further derived classes, creating an inheritance “tree” or hierarchy. A root class is the topmost class in an inheritance hierarchy. In VB.NET (and all CLS-compliant languages), the root class is Object. The nomenclature is a bit confusing until you imagine an upside-down tree, with the root on top and the derived classes below. Thus, the base class is considered to be “above” the derived class.

Object provides a number of methods that subclasses can and do override. These include Equals( ), which determines if two objects are the same, GetType( ), which returns the type of the object, and ToString( ), which returns a string to represent the current object. Specifically, ToString( ) returns a string with the name of the class to which the object belongs. Table 6-1 summarizes the methods of Object.

Table 6-1.  The Object class

Method

What it does

Equals( )

Evaluates whether two objects are equivalent.

Finalize( )

Cleans up non-memory resources; implemented by a destructor.

GetHashCode( )

Allows objects to provide their own hash function for use in collections (see Chapter 9).

GetType( )

Provides access to the type object.

MemberwiseClone( )

Creates copies of the object; should never be implemented ...

Get Programming Visual Basic .NET, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.