here is a class called Class in java.lang, which is generally used for
reflection.
Every class has a member of type Class (which is created by the classloader),
you can (for example) use it like this - this.getClass().getName()
will give you the full classname of the class you use it in.
Regarding the case sensitivity - it's something you get used to.
I tend to use it by naming variables as the classname with a lowercase first
character, as in Fractal fractal = new LambdaFn(), which makes clearer what
type a variable is (often useful in debugging).