Каждый класс в Java расширяет класс Object. Еще один класс Integer также расширяет Object. Следовательно, Object и Integer рассматриваются как экземпляр объекта. Поэтому, когда вы передаете значение null в качестве параметра, а компилятор запутывается, какой метод объекта вызывается, например, с параметром Object или параметром Integer, поскольку оба они являются объектами, а их ссылка может быть нулевой. Но примитивы в java не расширяют Object.