I just tested this using the following code:

void OnCollisionEnter( Collision collision )
{
    this.enabled = false;
    Debug.Log( "Collided with " + collision.gameObject.tag );
}


void Update()
{
    if( this.enabled )
    {
        Debug.Log( "Enabled" );
        return;
    }
    Debug.Log( "Disabled" );
}


"Enabled" was displayed until the object came in contact with something, it outputted "Collided with tag". "Disabled" was never shown, proving that disabling/enabling an object takes immediate effect. It's probably just a flag that is checked when calling event methods.

This is assuming that Update methods are called after OnCollisionEnter, which they, according to the Unity documentation, are.

When are Unity scripts actually disabled?
I am currently travelling for faculty interviews. Some professors and other interviewers have asked me where else I have interviewed. Should I tell interviewers where else I've interviewed?

Intuitively I would like to give them less information, but I also don't want to appear guarded and defensive as a person, either.
