Sure, it only affects you. The problem is that changes to superclass can now break your code.<p>For example, perhaps right now the function looks like this:<p><pre><code>    def get(self, url, method=&#x27;GET&#x27;):
        ...

    def post(self, url):
        self.get(url, method=&#x27;POST&#x27;)
</code></pre>
You override get, to add some additional functionality. All is fine.<p>Then somebody realizes that the original code was silly, and rewrites it:<p><pre><code>    def get(self, url, method=&#x27;GET&#x27;):
        if method != &#x27;GET&#x27;:
           print &quot;DEPRECATED!&quot;
        self.request(url, method=method)

    def post(self, url):
        self.request(url, method=&#x27;POST&#x27;)
</code></pre>
It seems to do the same thing, and probably passes all the same tests. But suddenly, now your code doesn&#x27;t get called for post requests and your additional functionality breaks in a mysterious way.<p>Perhaps its still your fault for doing a bad job subclassing, but its going to look like its the fault of the person who fixed the parent class.