《野火》遊戲藝術圖被區塊鏈遊戲盜用 太無恥了
阿新 • • 發佈:2021-09-13
java有四種內部類,用於在類內部完成較為複雜的邏輯,並且可以訪問類的私有屬性
python也有內部類,與java內部類差不多,下面是簡單的用法
class Outer: age = 18 def __init__(self, task_id): self.task_id = task_id def common(self): print("我是外部類的普通方法") return self.task_id @classmethod def c_method(cls): print("我是外部類的類方法") @staticmethod def println(): print("我是外部類的靜態方法") # obj代表外部類的物件 class Inner: def __init__(self, table_name, obj): self.table_name = table_name self.obj = obj def __str__(self): print("列印外部類的類屬性") print(Outer.age) print("列印外部類的類方法") Outer.c_method() print("列印外部類的靜態方法") Outer.println() print("列印外部類的普通方法") self.obj.common() print("列印外部類的屬性task_id" + self.obj.task_id) return self.table_name def run(self):print("啟動") def execute(self): # 外部類方法訪問內部類 print("外部類方法例項化內部類") inner_obj = self.Inner("table", self) print("在外部類方法列印內部類物件" + str(inner_obj)) inner_obj.run() if __name__ == "__main__": outer = Outer("task") print('outer物件' + str(outer)) inner = Outer.Inner("table", outer) print('inner物件' + str(inner)) outer.execute()