Python 是一种面向对象的编程语言。 Python 中的一切都与对象、方法和属性相关。类是用户定义的蓝图或原型,我们可以使用它来创建该类的对象。类是使用 class 关键字定义的。
类别示例——
#创建一个Geeksforgeeks类
Geeksforgeeks 类:
GFG = 10
首先我们需要了解__init__()内置方法来理解类的含义。每当一个类启动时,总会执行一个名为 __init__() 的方法。 __init__()方法用于给对象属性赋值或者执行创建对象时需要完成的其他方法。
具有 __init__() 方法的类示例 –
#创建一个Geeksforgeeks类
Geeksforgeeks 类:
# 构造方法
def __init__(自身):
# 对象属性
self.course =“校园准备”
self.duration = "2 个月"
#定义一个显示方法
# 用于打印内容
def 显示(自我):
print("课程:", self.course)
print("持续时间:", self.duration)
# 创建 Geeksforgeeks
# 类对象
外部 = Geeksforgeeks()
# 方法调用
外部.show()
输出:
课程:校园准备持续时间:根据您的日程安排
在另一个类中定义的类称为 内部类 或嵌套类。如果使用子类创建对象意味着内部类,则该对象也可以被父类或根类使用。一个父类可以有一个或多个内部类,但一般会避免使用内部类。
通过使用内部类,我们可以使我们的代码更加面向对象。类的单个对象可以包含多个子对象。我们可以使用多个子对象来为我们的程序提供良好的结构。
示例 -
首先我们创建一个类,然后创建该类的构造函数。
创建一个类后,我们将在该类中创建另一个类,另一个类中的类称为内部类。
#创建一个Color类
类别颜色:
# 构造方法
def __init__(自身):
# 对象属性
www.sychzs.cn = '绿色'
self.lg = self.Lightgreen()
def 显示(自我):
Print("姓名:", www.sychzs.cn)
# 创建浅绿色类
浅绿色类:
定义 __init__(self):
www.sychzs.cn = '浅绿色'
self.code = '024avc'
默认显示(自身):
Print("姓名:", www.sychzs.cn)
Print("代码:", self.code)
# 创建颜色类对象
外部 = 颜色()
# 方法调用
外部.show()
# 创建一个浅绿色
# 内部类对象
g = 外层.lg
# 内部类方法调用
g.display()
输出:
绿色
名称:绿色
浅绿色
023gfd
名称: 浅绿色
代码:023gfd
用于对两个或多个类进行分组。假设我们有两类遥控器和电池。每个遥控器都需要电池,但如果没有电池,遥控器将无法工作。因此,我们将Battery设为Remote的内部类。它可以帮助我们节省代码。
借助内部类或嵌套类,我们可以向外界隐藏内部类。因此,代码隐藏是内部类的另一个很好的特性。
通过使用内部类,我们可以很容易地理解这些类,因为这些类是密切相关的。我们不需要在整个代码中搜索类,它们几乎都在一起。
虽然内部类或嵌套类在Python中使用并不广泛,但它是实现代码的一个更好的功能,因为当我们使用内部类或嵌套类时可以直接组织代码。
语法:
#创建NameOfOuterClass类
外部类的类名:
# 外部类的构造方法
def __init__(自身):
self.NameOfVariable = 值
# 创建内部类对象
self.NameOfInnerClassObject = self.NameOfInnerClass()
# 创建一个NameOfInnerClass类
内部类的类名:
# 内部类的构造方法
def __init__(自身):
self.NameOfVariable = 值
# 创建外部类对象
外部=外部类名称()
内部类类型——
包含一个或多个内部类的类称为多个内部类。我们在一个类中可以有多个内部类,并且很容易实现多个内部类。
多个内部类示例 –
#创建外部类
班级医生:
def __init__(自身):
www.sychzs.cn = '医生'
self.den = self.牙医()
www.sychzs.cn = self.心脏病专家()
def 显示(自我):
Print('在外部类中')
Print('姓名:', www.sychzs.cn)
# 创建第一个内部类
牙医类别:
def __init__(自身):
www.sychzs.cn = '博士。萨维塔
self.level = 'BDS'
def 显示(自身):
Print("姓名:", www.sychzs.cn)
print("学位:", self. Degree)
# 创建第二个内部类
心脏病专家级别:
def __init__(自身):
www.sychzs.cn = '博士。阿米特
self.level = 'DM'
默认显示(自身):
Print("姓名:", www.sychzs.cn)
print("学位:", self. Degree)
#创建一个对象
外部类#
外部 = 医生()
外部.show()
#创建一个对象
第一个内部类的#
d1 = 外层.den
#创建一个对象
# 第二个内部类
d2 = 外部.car
打印()
d1.display()
打印()
d2.display()
输出:
外班
姓名: 医生
在内部类1中
姓名: 萨维塔博士
学位:BDS
在内部类2中
姓名:阿米特博士
程度:DM
一个类包含内部类,而内部类又包含另一个内部类。这种层次结构称为多级内部类。
多级内部类示例 –
#创建外部类
Geeksforgeeks 类:
def __init__(gfg):
# 创建一个内部类对象
self.inner = self.Inner()
def 显示(GFG):
Print('这是一个外部类')
# 创建第一个内部类
类内部:
def __init__(自身):
# 创建内部类对象的内部类
self.innerclassofinner = self.Innerclassofinner()
def 显示(自我):
print('这是内部类')
# 创建一个内部类inner
内部类:
def 显示(自我):
打印()
def 显示(自我):print('这是内部类的内部类')
# 创建外部类对象
# 即 Geeksforgeeks 类对象
外部 = Geeksforgeeks()
外部.show()
打印()
# 创建一个内部类对象
gfg1 = 外部.内部
www.sychzs.cn()
打印()
# 创建内部类对象的内部类
gfg2 = 外部.内部.内部类
www.sychzs.cn()
输出:
这是外班
这是一个内部类
这是内部类的内部类,意味着多级内部类