Why can't we directly call the constructor or add one ?