Python中的面向对象重点

面向对象重点

与面向过程区别

面向过程

按照步骤逐一实现方法

面向对象

将实现目标过程中出现的所有元素进行抽象封装

特点

封装 继承 多态

封装

面向对象编程第一步就是将项目内容中出现的对象进行建模封装
将对象中需要用到的属性和方法逐一定义和实现

继承

在写一个新的类时,可以指定多个父类,使这个类完全继承指定的父类中的属性和方法

多态

在不同场景下 同样的方法呈现不同的效果
我们从现实生活中举例
比如 显示器 这个类都有 显示 这个方法
有两个子类 手机显示器 电脑显示器
我们想要将同一个 网页 分别在 手机显示器 电脑显示器显示
因为手机和电脑的显示器尺寸不同,我们手机和电脑通常使用不同的显示方式
网页手机显示器电脑显示器显示 内容的不同就是 多态的体现

语法

定义类

直接定义
class 类名:
	# 定义方法
	方法列表...
继承定义
class 类名(父类1, 父类2, 父类3, ...):
	# 定义方法
	方法列表...

方法

定义
	def 方法名(self):
        内部实现...
多态体现

父类中的方法子类可以直接重写

父类可以不实现方法 使用pass占位

属性

# 内部定义

self.属性名 =# 外部定义

#   设置
实例名.属性名 =#   获取
直接把 实例名.属性名 当作变量名使用

具象化实例

对象名 =()

方法调用

对象名.方法名()

self关键字

用于在类中对未来生成的实例进行操作
用于指向实例本身
因为我们在书写类时,其实是在书写一个用于生成实例的模板,self作为类对于未来会生成的实例的指示代词使用
相当于在java中的默认关键词 this

常用预设方法模板(魔法方法)

init(构造方法)
    # 无参
    def __init__(self):
        self.变量名1 =1
        self.变量名2 =2
    # 有参
    def __init__(self, 参数1, 参数2):
        self.变量名1 = 参数1
        self.变量名2 = 参数2
str(转字符串)
    def __str__(self):
        # 需要返回str 实现类与字符串转换
        return (f'{self.变量名1}, {self.变量名2....}')
del(资源清理)
    def __del__(self):
        print('del自动调用了该方法 清理资源')
        pass
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值