class Base(object):
def login(self):
raise NotImplementedError("子类没有实现该方法") # NotImplementedError 没有实现的错误
class Normal(Base):
def login(self):
pass
class Member(Base):
def denglu(self):
pass
class Admin(Base):
def login(self):
pass
# 项目经理总入口
def login(obj):
print("准备验证码...")
obj.login()
print("进入主页...")
n = Normal()
m = Member()
a = Admin()
login(n)
login(m) # 报错
login(a)
from abc import ABCMeta, abstractmethod
class Base(metaclass=ABCMeta):
@abstractmethod
def login(self):
pass
class Normal(Base):
def login(self):
pass
class Member(Base):
def denglu(self):
pass
class Admin(Base):
def login(self):
pass
n = Normal()
n.login()
m = Member() # 报错 Can't instantiate abstract class Member with abstract methods login
m.login()
a = Admin()
a.login()