2016-12-20 1 views
2

私はメソッドrun()を持つスーパークラスを持っています。スーパークラスのメソッドの名前をPythonでどのように変更するのですか?

スーパークラスのサブクラスを作成し、独自のrun()メソッドを作成したいと考えています。しかし、私はこの新しいオブジェクトのoldrun()というメソッドで古い実行メソッドの機能を保ちたいと思います。

これをPythonでどうやってやりますか?

+1

これがやりたいために奇妙なことのように思える...あなたの周りの古いバージョンを保持したい理由は、より具体的な理由はありますか? – mgilson

+0

奇妙なことに、あなたはオブジェクトを継承し、潜在的に混乱するような方法でAPIを変更します。 – innisfree

答えて

4

あなたはこのようにそれを行うことができます:

class Base(object): 
    def run(self): 
     print("Base is running") 

class Derived(Base): 
    def run(self): 
     print("Derived is running") 

    def oldrun(self): 
     super().run() 
関連する問題