Never actually adding the action? Or do I have to call the action?

You are using after_theme_switch action but the correct name is after_switch_theme.

Also, you won’t see the echo statements on after_theme_switch and switch_theme. To debug things in that hooks you can use, for example, error_log() function and look for messages in PHP error log file (you need to have errors “On” and/or WP_DEBUG enabled).

I’ve tested this and it works:

new Activation;

class Activation {

    public function __construct(){

            add_action('after_switch_theme', array($this, 'themeActivation'));
            add_action('switch_theme', array($this, 'themeDeactivation'));

    }

    public function themeActivation(){
        error_log( 'activated' );
    }

    public function themeDeactivation(){
        error_log( 'deactivated' );
    }

}

error code: 523