Как работает данный фрагмент кода?
Классы описывают реальный мир. 
Вот у вас есть класс человек (person) у человека есть имя, фамилия и телефон.
Следующий класс - учётная запись (Account). Учётная запись кому-то принадлежит и этот кто-то - человек, которого описывает класс person, который добавлен как поле в класс account.
Т.о., если понадобится выяснить кому принадлежит учётная запись - эта информация всегда будет доступна.
обязательно ли именовать пакеты в Java именно так "com.javastart.NAME"
Их можно именовать как угодно. Просто если делать интеграцию твоего приложения с другими
библиотеками то конфликтов имен можно избежать если всегда добавлять домен + твое имя.
Это практически всегда уникально.