Path: csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Robert Klemme Newsgroups: comp.lang.java.programmer Subject: Re: Are you sure, Mr. Gosling? Date: Tue, 7 Jun 2016 19:10:23 +0200 Lines: 28 Message-ID: References: <1eb77568-ae31-4316-ac21-a33db79c5aa4@googlegroups.com> <5c864ac4-9634-4c88-9d6b-d14dbf3b3886@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: individual.net EDPLN9aVg7lGhpJpRmiP2QE3aqaCghP1YbNayKzEl8oegJ2mU= Cancel-Lock: sha1:OxFZ3tnu/KF2EWEj4oG32UWArA0= User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 In-Reply-To: <5c864ac4-9634-4c88-9d6b-d14dbf3b3886@googlegroups.com> Xref: csiph.com comp.lang.java.programmer:34540 On 07.06.2016 14:08, Eric Douglas wrote: > On Monday, June 6, 2016 at 4:56:24 PM UTC-4, Robert Klemme wrote: >> The infamous "copy constructor" usually has a single parameter of the >> same type (sometimes superclass or interface) but will also happily >> accept any subclass instance of the argument type. If implemented with >> "copy" logic the best this will do is copy the state of the argument >> that is relevant to this class. It is not guaranteed to create a copy >> of the other instance. The central point of this type of object >> creation is that calling code is in control of the resulting object's type. > > So the copy constructor is preferable? That is not what I said. > I aim to get a custom class to copy itself, and I want a class > extending that class to copy itself.. That sounds more like a use case for clone() to me as it seems to stress that the original type is preserved. It really depends on the usage. Kind regards robert -- remember.guy do |as, often| as.you_can - without end http://blog.rubybestpractices.com/