No, this cannot return null. However, it may throw an exception, and depending on how you handle this exception, the obj link may still remain empty after the exception has been processed (if you leave a block of code, for example, without catching the exception, the obj link will cease to exist and therefore this irrelevant).
The reasons for exceptions in the constructor are manifold, for example, if you run out of memory (in this case you get an OutOfMemoryError ), or if you access an uninitialized field that is still null and will NullPointerException .
source share