admin_notices not displaying in plugin

Try this. I cleaned up your arg array and placed everything in a function. Also, why are you using the getInstance method when your efpd_admin_notice is public? See the code below for accessing this method properly.

function plugin_update(){
    $plugin_update = Efpdd::efpd_admin_notice(array(
        'type' => 'update',
        'message' => 'The plugin has just been updated.',
        'button' => 'Click for details'
    );
    echo $plugin_update;
);
add_action('admin_notices', 'plugin_update');