一 Python中内部类
class MyOuter:
age=18
def __init__(self,name):
self.name=name
class MyInner:
def __init__(self,inner_name):
self.inner_name=inner_name
out=MyOuter(\'lqz\')
inner=out.MyInner(\'lqz_inner\')
print(inner.inner_name)
二 内部类调用外部类的类属性和类方法
class MyOuter:
age=18
def __init__(self,name):
self.name=name
@classmethod
def outer_class_method(cls):
print(\'我是外部类的类方法\')
class MyInner:
def __init__(self,inner_name):
self.inner_name=inner_name
def inner_method(self):
print(\'我是内部类的对象方法\')
MyOuter.outer_class_method()
out=MyOuter(\'lqz\')
inner=out.MyInner(\'lqz_inner\')
inner.inner_method()
三 内部类调用外部对象的对象属性和方法
需要在内部类构造的时候,把对象传过来
class MyOuter:
age=18
def __init__(self,name):
self.name=name
@classmethod
def outer_class_method(cls):
print(\'我是外部类的类方法\')
def outer_obj_method(self):
print(\'我是外部类对象的绑定方法\')
class MyInner:
def __init__(self,inner_name,obj):
self.inner_name=inner_name
self.obj=obj
def inner_method(self):
print(\'我是内部类的对象方法\')
MyOuter.outer_class_method()
self.obj.outer_obj_method()
out=MyOuter(\'lqz\')
inner=out.MyInner(\'lqz_inner\',out)
inner.inner_method()
继续阅读与本文标签相同的文章
-
特斯拉明年将在日本安装家用蓄电池 首次在亚洲亮相
2026-05-19栏目: 教程
-
原创教程:创建邮箱群组,同时发给诸多收件人
2026-05-19栏目: 教程
-
揭秘!大数据知识工程到底是什么
2026-05-19栏目: 教程
-
微软:所有Windows 10用户默认启用Defender篡改保护功能
2026-05-19栏目: 教程
-
国际机器人联合会:全球工业机器人2019报告
2026-05-19栏目: 教程
