The most basic definition of a Dijit is that it is a Dojo class which is associated with a certain DOM element in a web page. It is, in any other aspects, a regular Dojo class. The _Widget
base class (that is the ultimate root class of all Dijits) does add a number of extra handle properties and functions to all Dijits, such as the variable domNode
which refers to the DOM node which the Dijit is associated with.
All Dijits also have a lifecycle (described below) where Dojo ensures that certain functions on the Dijit are called at various times. There is for example one function that will be called before the Dijit is actually displayed and another one, which is called before any child Dijits are created, and so on.