Python基础复习08_面向对象基础

面向对象基础

1. 类和对象

1.1 类

类是指对一系列具有相同特征和行为的事物的统称,是一个抽象的概念,不是真实存在的事务
·特征 ==> 属性
·行为 ==> 方法
类是用来创建对象的

1.2 对象

对象是类创建出来的真实存在的事物
·开发中,先有类,再有对象

2. 面向对象

2.1 定义类

·语法:

class ClassName():
    ...
    ...

·注意:类名要满足标识符命名规则,习惯上遵循大驼峰命名
·拓展:经典类(不由任何内置类型派生出的类叫经典类)

2.2 创建对象

·语法

对象名 = 类名()

·创建对象的过程也叫实例化对象

2.3 self

·self指的是调用该函数的对象

class WashMan():
    def wash_cloth(self):
        print("wash the clothes")
        print(self)
        
washman1 = WashMan()
print(washman1)
washman1.wash_cloth()
<__main__.WashMan object at 0x00000204897AB910>
wash the clothes
<__main__.WashMan object at 0x00000204897AB910>

·注意:打印对象和self得到的结果是一样的,都是当前对象的内存地址

3. 添加/获取对象属性

属性就是特征,比如人的身高体重等
对象的属性既可以在类外面添加和获取,也可以在类里面添加和获取

3.1 类外添加/获取对象属性

·语法

# 添加属性
ObjectName.PropertyName = Value
# 获取属性
ObjectName.PropertyName
# 添加属性
washman1.name = 'lee'
washman1.salary = 99999

# 获取属性
print(f"工具人1的名字是{washman1.name},薪水是{washman1.salary}")
工具人1的名字是lee,薪水是99999
3.2 类里面获取对象属性

·语法

self.propertyName
# TODO:define a class
class foolman():
    def printinfos(self):
        print(f"the name of the sb is {self.name}")
        
# TODO: create an object
sb1 = foolman()

# TODO: add properties
sb1.name = "gsl"
sb1.father = 'jcl'

sb1.printinfos()
the name of the sb is gsl

4. 魔法方法

4.1 __init__()

·作用:初始化对象
·注意:
1.__init__()方法在创建一个对象时会被默认调用,不需要手动调用
2.__init__(self)中的self参数,不需要开发者传递,python解释器会自动将当前对象引用传递过去

4.2 带参数的__init__()

·作用:初始化对象属性

4.3 __str__()

·作用:当使用print输出对象时,默认会打印对象的内存地址,但如果定义了__str__()方法,会打印本方法return的数据

4.4 __del__()

·作用:删除对象时,python解释器会默认调用该方法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值