Т.е. в них никаких функций не зашито изначально? Это просто папки.
Там чуть сложнее. Функция в том, чтобы можно быть подгружать зависимости по пакетам. Вот у тебя есть класс MyClass. Например, ты хочешь использовать какой-то пакет com.mycompany.mypackage. Ты указываешь зависимость от него: import com.mycompany.mypackage.
А теперь представим, что этот пакет вести 2 ГБ, а тебе нужна только две функции из него. Тогда ты указываешь зависимость от подпакета, где лежат эти твои две функции, чтобы не тащить пакет целиком: com.mycompany.mypackage.mysubpackage.
В итоге все твое приложение можно представить как набор пакетов, связанных друг с другом.