A Key is an identifier for Widgets, Elements and SemanticsNodes.
A new widget will only be used to update an existing element if its key is
the same as the key of the current widget associated with the element.
Keys must be unique amongst the Elements with the same parent.
Subclasses of Key should either subclass LocalKey or GlobalKey.
The hash code for this object. [...]
A representation of the runtime type of the object.
Invoked when a non-existent method or property is accessed. [...]
Returns a string representation of this object.