4
Mengapa koleksi Java diimplementasikan dengan "metode opsional" di antarmuka?
Selama implementasi pertama saya memperluas kerangka koleksi Java, saya cukup terkejut melihat bahwa antarmuka koleksi berisi metode yang dinyatakan sebagai opsional. Pelaksana diharapkan untuk membuang UnsupportedOperationExceptions jika tidak didukung. Ini langsung mengejutkan saya sebagai pilihan desain API yang buruk. Setelah membaca banyak buku "Efektif Java" karya Joshua Bloch yang luar …