Read A Few Notes About Java clone() Method, and my explanation to why Java clone() acts like that is being here:
1) Java clone will clone a new instance without calling constructor, as constructor is used to used in initialisation of construction of object, and the value of object may changed later, if run constructor again during clone, sure will got problem, so by initial design the clone will not call constructor.