Фрагменты можно представить как легковесную активити. Они представляют собой часть UI, которую можно переиспользовать много раз. Как и у активити, у фрагмента есть свой lifecycle, layout и он может обрабатывать действия пользователя на своем layout. С помощью фрагментов можно внести модульность в свое приложение, используя различные сочетания фрагментов в различных активити.
Стоит учесть, что стандартный класс Fragment из android.app сейчас считается deprecated. Необходимо использовать класс Fragment из support-библиотеки, то есть androidx.fragment.app.
Чтобы создать свой фрагмент, необходимо сделать то же самое что и с Activity, то есть создать наследника класса Fragment. При этом необходимо, чтобы у данного наследника был пустой конструктор, так как именно такой вызывает система при пересоздании фрагментов (при configuration changes например).