Являются ли примитивы Java первоклассными гражданами? - программирование

Являются ли примитивы Java первоклассными гражданами?

В Структура и интерпретация компьютерных программ от Джеральда Джей Суссмана и Гарри Абельсона первоклассных граждан описываются:

  • Они могут быть названы переменными.
  • Они могут передаваться как аргументы в процедуры.
  • Они могут быть возвращены в качестве результатов процедур.
  • Они могут быть включены в структуры данных.

Для меня это означает, что примитивный тип данных является первоклассным гражданином. Однако некоторые вопросы и ответы Я вижу ответ, рассматривающий примитивы как не первоклассные граждане.

Вопрос: являются ли примитивы Java первоклассными гражданами?

4b9b3361

Ответ 1

По определению в вашем вопросе, да, они есть. Определение, используемое другими, может не совпадать с определением в вашем вопросе. Если вы используете другое определение, то они могут не соответствовать ему. Например, в ответ, который вы связали, определение, подразумеваемое вопросом, будет связано с их производным от Object, что, конечно, это не так, и поэтому , которые, это не так.

Все сводится к тому, что вы подразумеваете под "первоклассным гражданином".