如果你有兩個重載的方法,像這樣:我怎樣才能讓一個方法取空值?
public void methodName(File file){}
public void methodName(String string){}
如果你試圖調用methodName
與null
你會得到一個錯誤,指出它的曖昧這是可以理解的,因爲它不知道該怎麼辦哪一種方法。
我知道你可以只投出null:methodName((String) null)
但是我怎樣才能創建一個特別的方法來處理你撥打methodName(null)
的情況?
事情是這樣的:
public void methodName(null null){}
我怎樣才能讓這必須採取一個空的方法?
帶有參數類型的重載方法確保(和文檔)只給出有效的類型。 – Andreas
爲什麼downvote?這是功能正確的代碼,它實際上回答了被問到的問題。我*直接指出,作爲一種編程練習,它被忽視並給出了原因。 – par
@Andreas,問題是關於如何編寫一個可以使用'null'並解決編譯器歧義的函數,它不是*關於類型化參數優點的問題。 – par