It completely depends on the use case and logic. I prefer to call it after new X() as object will have data after some setters are called.
new X()
X obj = new X(); obj.setName("xyz"); obj.setId(1); validator.validate(obj);