For the &#x27;best practice&#x27; to work, you&#x27;d have to make your object accept an interface, in order to be able to accept one with the overridden function that you want, correct?<p>I think this is the problem with the received-but-not-understood wisdom -- the implementers don&#x27;t actually use an interface but hard-code the class that has the method, so it&#x27;s not any more over-rideable than a regular function call.