面向对象进阶

定义类的两种方式

# 定义一个类,创建类对象
# 1,完整版  class 类名(object):   #如果类有继承其它的类,其它类的类名就写在括号中
# 2,简单版class 类名:  # 如果类没有继承其它的类的话,我们使用这一种
class Cat:
    pass

创建对象

接收对象的变量名 = 类名()
p = Plane()

初始化方法init

类名()

创建对象

被动触发

创建对象的同时,会触发一个init方法

对象创建出来的时候,会执行一次init方法

利用这个特性,我们可以在init方法中添加一些东西

婴儿出生的哭

游戏开始时的初始化等待

对象消失时del方法

对象从内存中被注销,被释放内存空间的时候,会自动触发的方法

1,主动删除

del 对象

del(对象)

2,游戏结束,代码运行到最终

触释器会清空所有资源,清空内存中存放的一切数据

清空一切时,自然也会清空对象

def __del__(self):
    # print('del')
    words = [
        "我还会回来的",
        "我还不想死",
        "下次我会更劢害的"
    ]
    idx = random.randint(0,2)
    print(words[idx])

打印对象时的输出控制str方法

def __str__(self):
    return "abc"

str方法中

返回的是什么内容

打印这个对象时,会就会显示什么内容

给对象添加属性

对象.属性 = 值

给对象添加属性的时机

  1. 初始化的时候

    小孩一出生,肯定有一个编号,这个编号,就是相当于小孩对象的属性

    小孩一出生,身高,体重,对象属性

    上述的对象属性,创建的时机

    应该是在初始化的时候

    也就是说

    是在对象被创建的时候,把属性赋给对象

    .

    可以利用init方法,给对象添加需要的对象属性

    .

  2. 需要的时候

    小孩长大了,参加培训

    获得了技能

    那么

    这种技能,属于后面滔天大罪 中的属性

    因此,这样一样的对象属性

    不在初始化方法中赋值

    可以在外面给他添加

获取对象属性的值

对象.属性    ----> 可以得到对象的属性的值

调用对象的方法

对象.方法名()     -----> 让对象的方法运行起来
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值