python学习笔记十九(面向对象思想的编程)

本文围绕Python类展开,介绍了创建类的设计要点,包括类名、属性和行为的命名原则。阐述了类实例化对象的方法,以及访问对象属性与方法的格式。还讲解了构造函数、self、析构函数等概念,重写函数、访问限制和继承的相关知识,如继承的优缺点及单继承实现。

1.第一个python类(创建类)
创建类之前需要先设计类
类名:见名知意,首字母大写,其他遵循驼峰原则
属性:见名知意,遵循驼峰原则
行为(方法/功能):见名知意,遵循驼峰原则

类名:Car
属性:color、type
行为:run
类名:person
属性:height、weight、age、name
行为:eat、run

设计好之后创建类
类:是一种数据类型,本身并不占内存空间,跟所学过的number、string、boolean等类似。用类创建实例化对象(变量),对象占内存空间
格式:
class 类名(父类列表):
(空格)属性
(空格)行为
在这里插入图片描述
2.使用类实例化对象
格式:
对象名=类名(参数列表)
注意:没有参数,小括号也不能省略
在这里插入图片描述
3.访问对象的属性与方法
访问对象的属性
格式:对象名.属性名
赋值:对象名.属性名=新值
访问方法
格式:对象名.方法名(参数列表)
在这里插入图片描述
4.对象的初始状态(构造函数)
构造函数:init()在使用类创建对象时自动调用
注意:如果不显示的写出构造函数,默认会自动添加一个空的构造函数
在这里插入图片描述
在这里插入图片描述
5.self
(self不是关键字,换成其他标识符也是可以的,但是一般都使用self)

  • self代表类的实例而非类
  • 哪个对象调用方法,那么该方法中的self就代表哪个对象
    在这里插入图片描述
    在这里插入图片描述
  • self.class 代表类名
    在这里插入图片描述
    在这里插入图片描述
    6.析构函数
    析构函数:del() 释放对象时自动调用
    在函数里定义的对象在函数结束时自动释放,这样可以用来减少内存空间的浪费
    7.重写__repr__与__str__函数
    重写:将函数重新定义写一遍
    str():在调用print打印对象时自动调用,是给用户用的,是一个描述对象的方法
    在这里插入图片描述
    repr():是给机器用的,在python解释器里边直接敲对象名在回车后调用的方法
    注意:在没有__str__且有__repe__时,str=repr
    优点:当一个对象的属性值很多,而且都需要打印时,重写了__str__方法后简化了代码
    8.访问限制
    如果要让内部的属性不被外部直接访问,就在属性前加两个下划线(__)。在python中如果在属性前加两个下划线,那么这个属性就变成了私有属性
    在这里插入图片描述
    当直接访问money时会报错是因为python解释器把__money变成了_Person__money,仍然可以用_Person__money去访问,但是一般不建议使用。不同的解释器可能存在的解释变量名不一致
    在这里插入图片描述
    在python中__XXX__属于特殊变量,可以直接访问
    在这里插入图片描述
    在python中,_XX 变量,这样的实例变量外部是可以访问的,但是按照约定的规则,当我们看到这样的变量时,意思是“虽然我可以被访问,但是请把我视为私有变量,不要直接访问我”
    在这里插入图片描述
    9.继承
    继承:假设有两个类,A类和B类,当我们说A类继承自B类的时候,那么A类就拥有了B类中的所有属性和方法
    在这里插入图片描述
    注意:继承者称为子类,被继承者称为父类
    继承的作用(优点)
    (1)简化了代码,减少了冗余
    (2)提高了代码的健壮性
    (3)提高了代码的安全性
    (4)是多态的前提
    缺点
    耦合与内聚是描述类与类之间的关系的,耦合性越低,内聚性越高代码越好,但是继承的耦合性较高
    单继承的实现
    父类:Person
    在这里插入图片描述
    子类:Student和Worker
    在这里插入图片描述
    在这里插入图片描述
    实现:
    在这里插入图片描述
    子类可以有一些独立的属性(例如学生的学号)
    在这里插入图片描述
    在这里插入图片描述
乐播投屏是一款简单好用、功能强大的专业投屏软件,支持手机投屏电视、手机投电脑、电脑投电视等多种投屏方式。 多端兼容与跨网投屏:支持手机、平板、电脑等多种设备之间的自由组合投屏,且无需连接 WiFi,通过跨屏技术打破网络限制,扫一扫即可投屏。 广泛的应用支持:支持 10000+APP 投屏,包括综合视频、网盘与浏览器、美韩剧、斗鱼、虎牙等直播平台,还能将央视、湖南卫视等各大卫视的直播内容一键投屏。 高清流畅投屏体验:腾讯独家智能音画调校技术,支持 4K 高清画质、240Hz 超高帧率,低延迟不卡顿,能为用户提供更高清、流畅的视觉享受。 会议办公功能强大:拥有全球唯一的 “超级投屏空间”,扫码即投,无需安装。支持多人共享投屏、远程协作批注,PPT、Excel、视频等文件都能流畅展示,还具备企业级安全加密,保障会议资料不泄露。 多人互动功能:支持多人投屏,邀请好友加入投屏互动,远程也可加入。同时具备一屏多显、语音互动功能,支持多人连麦,实时语音交流。 文件支持全面:支持 PPT、PDF、Word、Excel 等办公文件,以及视频、图片等多种类型文件的投屏,还支持网盘直投,无需下载和转格式。 特色功能丰富:投屏时可同步录制投屏画面,部分版本还支持通过触控屏或电视端外接鼠标反控电脑,以及在投屏过程中用画笔实时标注等功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值