1. Returns a Class object.
2. Returns an instance of the class.
To make the two equivalent, you would need to change (1) to Class.forName(className)
.newInstance();
If you do that, then basically there's no difference in the result because both of them use the default class loader. But note you can't use (2) within a static method because getClass() itself is not static.
Hope this helps,
David Peterson