哈喽, 大家好, 我是了不起!
欢迎大家来观看了不起的冒险之旅. 为了方便起见, 文中以小知为名. 讲述了不起在Python异世界的冒险之旅.
天空之城是座高耸云端的城堡. 位于西海岸附近, 在城堡的最顶端可以眺望到天空之海. 直到格兰之森那场大火的发生,使得围绕在它周围的魔法阵力量减弱,人们才终于重新看到天空之城的真实模样. 当时,关于天界的传闻甚至比天上的繁星还多,但是却没有一个人能够证明它真实存在。
我们以下面代码为例,分析整个创建过程:
class Student:
company = "sxd" # 类属性
count = 0 # 类属性
def __init__(self, name, score):
self.name = name # 实例属性
self.score = score
Student.count = Student.count + 1
def say_score(self): # 实例方法
print("我的公司是: ", Student.company)
print(self.name, "的分数是: ", self.score)
s1 = Student("时间静止", 18) # s1是实例对象, 自动调用__init__()方法
s2 = Student("不是简史", 81)
s1.say_score()
print('一共创建{0}个Student对象'.format(Student.count))
print("s1的引用:", id(s1))
print("s2的引用:", id(s2))
print("Student的引用:", id(Student))
初始化对象, 我们需要定义构造函数
__init__()
方法 构造方法用于执行“实例对象的初始化工作”, 即对象创建后, 初始化当前对象的相关属性, 无返回值 如果将对象比作一座房子, 则构造方法(__init__)
是负责初始化(装修) , 不是建对象(房子)
__init__()
的要点如下(约等于Java的构造方法):
__init__()
self
. self
指的就是刚刚创建好的实例对象类名(参数列表)
”来调用构造函数. 调用后, 将创建好的对象返回给相应的变量. 比如: s1 = Student("时间静止", 80)
__init__()
方法: 初始化创建好的对象, 初始化指的是: "给实例属性赋值"__init__
方法, 系统会提供一个默认的 __init__
方法. 如果我们定义了带参的 __init__
方法, 系统不创建默认的 __init__
方法__new__()
方法: 用于创建对象, 但我们一般无需重定义该方法注意:
__del__()
称为“析构方法”, 用于实现对象被销毁时所需的操作. 比如: 释放对象占用的资源, 例如: 打开的文件资源、网络连接等
注意:
__del__()
__del__()
__del__
方法 , 一般不需要自定义析构方法.实操代码
class Person:
def __del__(self):
print("销毁对象: {0}".format(self))
p1 = Person()
p2 = Person()
del p2
print("程序结束")
全部0条评论
快来发表一下你的评论吧 !