What to use instead of Class.newInstance()?
JavaReflectionJava Problem Overview
Class.newInstance()
is marked deprecated. Documentation does not suggest any alternatives. How are we meant to create instances now?
Java Solutions
Solution 1 - Java
To quote Java 9's javadoc:
> The call
>
> clazz.newInstance()
>
>can be replaced by
>
> clazz.getDeclaredConstructor().newInstance()
Solution 2 - Java
Class.getDeclaredConstructor(...).newInstance(...)
Refer to Google errorprone's documentation (for example) for a description of why.