Hangi aşırı Java null için seçilir?
Java bu satırı yazarsam:
JOptionPane.showInputDialog(null, "Write something");
Hangi yöntemi çağrılır?
showInputDialog(Component parent, Object message)
showInputDialog(Object message, Object initialSelectionValue)
Bunu test edebilirim. Ama diğer buna benzer durumlarda, ne olacağını bilmek istiyorum.
CEVAP
en özelyöntem olarak adlandırılan bu durumda olacak
showInputDialog(Component parent, Object message)
Bu genellikle spec aşırı çözünürlük "Determine Method Signature" adım (15.12.2), ve özellikle "Choosing the Most Specific Method" altında gelir.
Detaylara de spec olarak buradan okuyabilirsiniz) almadan, giriş iyi bir özet verir:
Eğer birden fazla üye yöntem ise erişilebilir bir yöntem uygulanabilir çağırma, gerekli seçmektir bir tanımlayıcı sağlamak için çalışma zamanı gönderme yöntemi. Java programlama dili kuralı kullanır buen özelyöntem seçilmiş.
Kayıt dışı bir sezgi bu. başka bir yöntem daha özeldir herhangi bir çağırma ilk tarafından kullanılırsa yöntem diğerine geçmiş olabilir derleme zamanı tür bir hata olmadan.
Bir Java null int bir değer için kontr...
Hangi tür Java annotation üyeleri için...
Nasıl aşırı bir yöntem değişmezini par...
Java NOT null, boş bir Dize için kontr...
Nasıl Java null olmayan ilk değeri alm...