getClassName() {
        return this.constructor.className;
    }
Return the class name for this class to use in serialization contexts.

Generally speaking this will be the same thing that constructor.name
would have returned.  However, the class name needs to be robust
against minification for serialization/deserialization to work properly.

There's also places such as initializers.VarianceScaling, where
implementation details between different languages led to different
class hierarchies and a non-leaf node is used for serialization purposes.