Если у вас есть два перегруженных методов, например:Как я могу заставить метод принять нулевое значение?
public void methodName(File file){}
public void methodName(String string){}
Если вы пытаетесь вызвать methodName
с null
вы получите сообщение об ошибке сказав, что это неоднозначное что вполне понятно, потому что он не знает, какой метод делать.
Я знаю, что вы можете просто указать нуль: methodName((String) null)
, но как я могу создать метод, специально предназначенный для обработки ситуаций, в которых вы звоните methodName(null)
?
Что-то вроде этого:
public void methodName(null null){}
Как я могу сделать метод, который должен взять нуль?
Перегруженный метод с типизированными параметрами гарантирует (и документ), что даны только допустимые типы. – Andreas
Почему downvote? Это функционально правильный код, и он фактически отвечает на заданный вопрос. Я * * * прямо указывал, что в качестве практики программирования он недооценивает и объясняет это. – par
@ Аndreas, вопрос о том, как написать функцию, которая может принимать «null» и разрешать неопределенности компилятора, это * не * вопрос о достоинствах типизированных параметров. – par