I know that a call to finish() does not cause the activity to return and exit its current scope immediately. It will continue to execute lines of code until it reaches a return statement or end of the method.
@Override
public void onClick(View v) {
    Intent intent = new Intent(this, SecondActivity.class);
    startActivity(intent);
    finish()
    // this still executes
    Log.d(TAG, "onClick - post finish()");
}
And I am aware that multiple methods called within a certain scope all continue to execute until completion when a finish() call is invoked. So in the code below each of the Log.d statements is shown in my Logcat.
@Override
public void onClick(View v) {
    Intent intent = new Intent(this, SecondActivity.class);
    startActivity(intent);
    /* Perform a method */
    doThis();
    Log.d(TAG, "onClick - post finish()");
}
private void doThis(){
    Log.d(TAG, "doThis called");
    /* Perform another method */
    doThat();
    Log.d(TAG, "doThis - post finish()");
}
private void doThat(){
    Log.d(TAG, "doThat called");
    /* Finish the activity! */
    finish();
    Log.d(TAG, "doThat - post finish()");
}
Here is the Logcat output for the code above:
07-31 14:44:28.354  25367-25367/com.test.app D/MainActivity﹕ doThis called
07-31 14:44:28.354  25367-25367/com.test.app D/MainActivity﹕ doThat called
07-31 14:44:28.355  25367-25367/com.test.app D/MainActivity﹕ doThat - post finish()
07-31 14:44:28.355  25367-25367/com.test.app D/MainActivity﹕ doThis - post finish()
07-31 14:44:28.355  25367-25367/com.test.app D/MainActivity﹕ onClick - post finish()
EDIT: 
Is there a better way to stop all code execution when the finish() method is called? Perhaps using something like CoreyOgburn suggested with willFinish() ormarkedToFinish()? Or maybe a way tofinishImmediately()`?
My code that is run after finish() has no way to know if the Activity is going to be finished. If I didn't want future code to run I would have to add a return statement after the doThis() and doThat().