Java is used for Android application development because it was chosen as the primary development language for the Android platform. Developers write Java code that interacts with the Android API and compiles into DEX code to run on the Dalvik Virtual Machine. The key components of an Android application are activities, services, broadcast receivers, and content providers which are declared in the AndroidManifest.xml file. The application code, resources, and manifest are bundled into an APK file that can be installed and run on Android devices.