There is a lot of confusion here, especially if you read outdated sources.
The basic one is Activity
, which can show Fragments. You can use this combination if you're on Android version > 4.
However, there is also a support library which encompasses the other classes you mentioned: FragmentActivity
, ActionBarActivity
and AppCompat
. Originally they were used to support fragments on Android versions < 4, but actually they're also used to backport functionality from newer versions of Android (material design for example).
The latest one is AppCompat
, the other 2 are older. The strategy I use is to always use AppCompat
, so that the app will be ready in case of backports from future versions of Android.