Need clear understand of handle

In reply to Ajeetha Kumari CVC:

I like to think of three distinct concepts: class variables, handles and objects.

A class object is an instance of a class definition that you create when you call its constructor function - new(). In SystemVerilog, all class objects are created dynamically; on or after time 0. The LRM does not specify how or when an object can be destroyed - only when it cannot be destroyed.

A class variable is variable whose value represents a reference to a class object. Like any other variable, the lifetime of a class variable depends on how and where it is defined (static, automatic, or dynamic).

The value that represents a reference to class object is called a handle. You can never see or represent the literal value of a handle (except for the special handle: null). You must use the class variable in an expression to reference members or methods in the class object using the class handle stored in the variable.