1. 程式人生 > >python 禁止呼叫類,只允許呼叫類的靜態方法

python 禁止呼叫類,只允許呼叫類的靜態方法

定義一個元類

class NoInstance(type):
    #通過__call___方法控制訪問
    def __call__(self,*args,**kwargs):
        rasie TypeError('禁止例項化')

class Demo(metaclass=NoInstance):
    @staticmethods
    def demo1(param):
       print(param)

可以通過如下方法訪問靜態方法

s = Demo.demo1('靜態方法')