6 Mayıs 2009, ÇARŞAMBA
Neden't Java kopya yapıcı değil mi?
Neden bir kopya gibi C yapıcı desteği Java değil mi ?
CEVAP
6 Mayıs 2009, ÇARŞAMBA
Java yok. Sadece C gibi örtülü değil deniyor ve bu senin gerçek soru bu sanırım.
Öncelikle, bir kopyalama kurucu fazla bir şey yok
public class Blah {
private int foo;
public Blah() { } // public no-args constructor
public Blah(Blah b) { foo = b.foo; } // copy constructor
}
Şimdi C örtük olarak böyle bir açıklama ile kurucu: kopya arayacak
Blah b2 = b1;
Bu durumda/kopyalama klonlama, b1 ve b2 C onlar gibi referansları ve değer nesneleri değil, çünkü sadece Java hiç mantıklı değil . C, bu açıklamayı nesnenin durumu bir kopyasını yapar. Java sadece kopyalarbaşvuru. Nesnenin durumu, dolaylı olarak kopya kurucu çağırmak mantıksız yani kopyalanmıyor.
Ve gerçek o.
Bunu Paylaş:
Neden Java statik olarak bir sınıf bil...
Liste<Köpek> Listenin alt<Hay...
Neden't java değil.açıklama.Set(i...
Neden &; son" Java 8 arabirim yön...
Neden mümkün Java ek açıklamaları uzat...