Klonlanabilir bir sınıf istiyorsanız neden klonlamayı geçersiz kılmalıyım? Tüm sınıflar Object
arasında uzanır, bu yüzden neden Object clone yöntemini geçersiz kılmalıyım? Neden orijinal Object clone yöntemini çağırmıyor?Neden klonlanabilir sınıf istersem klonlamayı geçersiz kılmalıyım?
6
A
cevap
8
JDK'daki birçok "tasarım hatası" ndan biri.
Clonable
bir clone()
yöntemle bir arayüz olması gerekirdi, ama bunun yerine bir marker interface ve Object
clone()
yöntemin bir "hiçbir şey" uygulaması vardır ... ve sorunuzun ile kalacaksın.
Eğer ilgileniyorsanız, this answer java diğer bazı "hataları" listeler.
1
Buraya bakın: http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Cloneable.html
istisna CloneNotSupportedException içinde klonlanabilir arabirimi sonuçları atılan uygulamıyor örneğinde Nesnenin klon yöntemini çağırma.
Ayrıca bu tartışma sizin için yararlı olacağını tahmin: Confusion about cloneable interface and object.clone() in java
İlgili konular
- 1. Sınıf alanları neden geçersiz kılmıyor
- 2. Kurucu kullanılarak nesne oluşturma yöntemi klonlanabilir
- 3. neden bazen geçersiz anahtar sözcüğe geçersiz kılınmalı?
- 4. Sınıf yöntemleri nasıl geçersiz kılın
- 5. Sınıf org.eclipse.jdt.core.JDTCompilerAdapter çünkü geçersiz bağımlılık
- 6. Templated Dequeue geçersiz işaretçi: Sınıf silme başarısız oluyor Sınıf
- 7. Parboiled2, "Prepender.class" sınıf dosyasını yüklerken eksik veya geçersiz bağımlılığın neden olmasına neden oluyor "
- 8. Alt sınıf yöntemleri alt sınıf argümanlarla geçersiz kılınır mı?
- 9. dizedir Sınıf-neden
- 10. Neden sınıf yükleyiciyi boşaltmadan bir sınıf yüklenemedi?
- 11. Bu neden geçersiz bir varyans?
- 12. Neden sanal yöntemim geçersiz kılmıyor?
- 13. Özel Görünüm Neden Geçersiz Olmuyor?
- 14. Swift: Alt sınıf içerisindeki typealias'ı geçersiz kılıyor
- 15. Scala'da bir iç sınıf nasıl "geçersiz kılınır"?
- 16. Kısmi Sınıf İşlevinde Geçersiz Kılma İşlevleri C++
- 17. python'da sınıf değişkenini geçersiz kılar mı?
- 18. Hata 'Get-WmiObject: Geçersiz sınıf "Msvm_ImageManagementService"'
- 19. "Soyut geçersiz kılma" neden subtraitda "geçersiz kılma" gerektirmiyor?
- 20. İç içe yerleştirilmiş öğeler XSD'ye neden olur JAXB'de geçersiz sınıf devralma döngüsü istisnası, bağlamaları düzgün bir şekilde nasıl geçersiz kılabilirim?
- 21. Neden alt sınıf yöntemi çağrılmıyor?
- 22. Neden sözde bir sınıf denir?
- 23. JdbcTemplate kodunu test etmek istersem @DataJpaTest'in karşılığı nedir?
- 24. Memcache'de bir None değeri kaydetmek istersem ne olur?
- 25. EntityFramework Özelliklerin nasıl geçersiz kılınacağı
- 26. Neden özel miras kapsamında geçersiz kılın?
- 27. Giriş stili, neden geçersiz blok görüntülendiğinde gösteriliyor
- 28. ASP.Net MVC2: ModelState geçersiz, ancak neden bilmiyorum
- 29. Neden açık COLLATE veritabanı harmanlamasını geçersiz kılmıyor?
- 30. Sorgu nhibernate neden geçersiz döküm hatası
Siz de bu cevabı ödeme isteyebilirsiniz: http://stackoverflow.com/questions/3652748/cloning-objects-in-java- 3-questions/3652767 # 3652767 – nkr
Her zaman sınıfınızda bir kopyalama yöntemi yazabilirsiniz. Hiçbir şeyi geçersiz kılmak zorunda değilsin. –