String сама по себе является классом, производным от Object, а int - примитивом.
Вероятно, ваше заблуждение связано с тем, что String ведет себя во многом подобно примитиву, так что он имеет базовые операции, которые могутприменяется к нему, как (+) конкатенация, и что его не нужно импортировать.
Конкатенация состоит в том, что она достаточно фундаментальна для применения этой добавленной операции, даже если это тип объекта.
Причина, по которой ее не нужно импортировать, по умолчанию java.lang
импортируется пакет, членом которого является строка.