This really is really develops from a specific WordPress problem there is however a far more general PHP point behind it which I am interested to understand the response to.

The WordPress class is along wrinkles:

class Tribe_Image_Widget extends WP_Widget {
    function example_function(){
        // do something useful
    }
}

Can there be any means by PHP will be able to replace example_function() from outdoors the course?

The main reason I do would be that the class comes from another person's Wordpress wordpress plugin (and it has several functions within the class) and I wish to continue receiving updates towards the wordpress plugin however i want among the functions modified. Basically alter the wordpress plugin, then I'll lose my own changes every time. Therefore if I've my very own wordpress plugin which just changes that certain function, I steer clear of the problem.

As lengthy because the method within the existing class has not been marked as final, you can easily subclass and override it

class My_Tribe_Image_Widget extends Tribe_Image_Widget {
    //override this method
    function example_function(){
        // do something useful
    }
}

It may sound like what for you to do is extend the course, and override that specific function.

Class Your_Tribe_Image_Widget extends Tribe_Image_Widget
{
   function example_function() {
     // Call the base class functionality
     // If necessary...
     parent::example_function();

     // Do something else useful
   }
}

You can most likely come with an include_once towards the target wordpress plugin towards the top of your file after which extend the course from the target wordpress plugin rather than the Wordpress_Widget class:

include_once otherPlugin.php
class My_Awesome_Plugin_Overloaded extends Someone_Elses_Awesome_Plugin{
    function example_function(){
         return 'woot';
    }
}