У меня есть два вопроса:
-
Мы знаем, что все типы получены из
Object
, который является ссылочным типом. Мой вопрос: почемуint
- тип value - наследуется от ссылочного типаObject
? Возможно ли это? -
Если
int
является производным отObject
, зачем нам нужно вводить поле при передачеint
в функцию, которая ожидаетObject
в качестве параметра? Обычно со ссылками, когда вам нужно передать объект производного типа в качестве параметра функции, ожидающего объект базового типа, вам не нужно делать ничего дополнительного. Почему ящик здесь?
Для меня эта ситуация кажется проблемой в том, как была разработана эта иерархия типов.
PS. Я нашел этот связанный вопрос, но ответ там не дает реалистичного понимания - просто абстрактно говорит о коробках.