python3 类方法的约束

什么是约束呢?约束就是父类对子类方法的约束。

# 三种用户类型:普通用户、吧务、管理员 但是这三种用户的登录入口是同一个。
class BaseUser:
    def login(self):
        raise NotImplementedError("You must implemented login.")


class NormalUser(BaseUser):
    def login(self):
        print("普通用户登录。")


class BaWu(BaseUser):
    def bawu_login(self):
        print("吧务登录。")


class Manager(BaseUser):
    def denglu(self):
        print("管理员登录。")


if __name__ == '__main__':
    u = NormalUser()
    u.login()  # 正常
    u = BaWu()
    # u.login()  # 报错NotImplementedError: You must implemented login.
    u = Manager()
    # u.login()  # NotImplementedError: You must implemented login.

执行结果:

普通用户登录。

总结:

  一般约束程序的架构方法的时候会用到。

原文地址:https://www.cnblogs.com/lilyxiaoyy/p/12011659.html