つまり、targetSDKVersion 以降の API の場合、コードはそのまま実行されます。minSdk から targetSDKVersion-1 の場合、下位互換性の変換/動作はシステムによって実行できます。
例:
targetSdkVersion 21 // <= Lollipop 5.x
minSdkVersion 17 // 4.4 KitKat <= you support this version thanks to some compability behaviors (it's done by the system so you don't have to woory)
アプリが Android 6.0 (Marshmallow) API 23 で実行されている場合、API/SDK 21 をサポートしているため、アプリは Android 6.0 で実行され、互換性の動作はありません。
API 動作の互換性に関する詳細は、こちら (14 ページ) にあります:
http://static.googleusercontent.com/media/source.android.com/en//compatibility/android-cdd.pdf
基本的には、API バージョンに関係なく関数を呼び出しても、動作は同じであることを意味します。特に新しい API をリリースする場合は、通常、コードを拡張、変更、修正して、以前のバージョンの動作に合わせることができません。そのため、コードの更新による問題を防ぐために、Android は同じ動作を保証する互換動作レイヤーを提供します。