Java does(ish). They're just not called implicitly like they are in C++
and I suspect that's your real question.

Firstly, a copy constructor is nothing more than:


public class Blah {
...