Pertanyaan yang diberi tag language-agnostic

767
Antarmuka vs kelas Basis

Kapan saya harus menggunakan antarmuka dan kapan saya harus menggunakan kelas dasar? Haruskah selalu menjadi antarmuka jika saya tidak ingin benar-benar menentukan implementasi dasar dari metode? Jika saya memiliki kelas Anjing dan Kucing. Mengapa saya ingin mengimplementasikan IPet daripada...

435
Kapan harus melempar pengecualian?

Saya memiliki pengecualian yang dibuat untuk setiap kondisi yang tidak diharapkan oleh aplikasi saya. UserNameNotValidException, PasswordNotCorrectExceptiondll. Namun saya diberitahu bahwa saya tidak boleh membuat pengecualian untuk kondisi tersebut. Dalam UML saya, itu adalah pengecualian untuk...