I looked up the syntax and searched the api but am still confused about the process. I also searched Stackoverflow. What is the proper way to load a class and create an obj
ClassLoader.loadClass will load a class. You get a classloader by myClass.getClassLoader() and you should fall back to ClassLoader.getSystemClassLoader() if that is null.
Once you've got a class instance, you can get its constructors via getDeclaredConstructor(...).
So if you have a public class MyClass with a constructor like public MyClass(String) { ... } then
Class clazz = MyClass.class;
Constructor ctor = clazz.getDeclaredConstructor(String.class);
MyClass instance = ctor.newInstance("foo");
The above ignores a bunch of possible exceptions.