IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python基础操作之类和对象 -> 正文阅读

[Python知识库]Python基础操作之类和对象

一、基础概念:类是用来描述具有相同属性和方法的集合,类是抽象的描述。对象是类的实例化。

二、类的定义:class 类名
在这里插入图片描述

三、类的三大特性:封装、继承、多态

  1. 封装(仅做了解):
    1.基础概念:是对对象的一种具体抽象,即将一些内容(方法、数据)隐藏起来,外部程序无法调用。只能通过特定的方法去调用。
    2.常用的封装方法:
    2.1 第一种方法就是什么都不做,直接使用对象或者类名去访问类中的属性、变量、方法。
    2.2 第二中方法就是私有化,但是Python没有严格意义上的私有化。私有化的内容都可以已特定的方式访问到。

  2. 继承:
    1. 基础概念: 一个类通过特定的方法去获取另一个类具有的属性和方法。(即一个派生类(derived class)继承基类(base class)的字段和方法。)
    2. 常见的继承方式:单继承(classA(classB)😃、多继承 (sonclass(fatherclass,motherclass):)、多层继承(类a继承类b,类c继承类a,此时类c也会具有类a具有的方法和属性,中间层父类无底层子类想要的方法、属性时,则一直会往上找。)
    3. 类继承时,常见的操作:
    2.3.1 方法重写(override):
    重写普通方法:
    重写父类的__init__(self)方法:
    2.3.2 调用超类方法(super().方法名):可以直接访问到父类中的方法。
    在这里插入图片描述

  3. 多态(仅做了解,个人感觉跟继承差不多):一个父类有多个子类。子类调用父类相同的方法后,产生不通的执行结果。

四、类的初始化方法:init(self)
作用:对“对象”进行初始化,赋予对象基础的属性。类似于其它语言中的构造函数,但是Python没有构造函数。
注意:该方法不能使用return。

五、类常见的三种方法:类方法、实例方法、静态方法
类方法(@classmethod)
-概念:需要使用@classmethod装饰器修饰。类方法可被继承,可以直接通过类名调用(推荐)或者类的实例对象调用(不推荐)
-作用(应用场景):在程序中,某个方法在逻辑上更适合使用类对象调用,便可将该方法定义为类方法。(比如工具类(一些需要多次被调用的方法),这样子可以不用实例化,直接通过类调用类中的方法。)
实例方法:
-概念:通常Python类中定义的方法都是实例方法,实例方法的特点是至少包含一个self参数,理论上初始化函数也是实例方法。实例方法可以通过类对象直接调用。
-作用(应用场景):常见的方法,大多数都是实例方法。需要使用实例对象调用。
静态方法(@staticmethod):
-概念:需要使用@staticmethod装饰器修饰。静态方法也可被继承,可以通过类名调用或者类的实例化对象调用:静态方法不能访问类的属性、方法。
-作用(应用场景):用于存放独立的方法,方法或者属性在逻辑上属于类,但是和类没有直接关系。不会涉及类中方法和属性的操作,是个独立的函数。

六、动态属性设置(JAVA里面叫反射)

  1. setattr:给类或者对象动态设置/修改属性值 ===> setattr(类名/对象名,属性名)
    在这里插入图片描述

  2. getattr:获取类或者对象的属性值:三个参数,第一个是类或者对象;第二个是想要获取的属性值,第三个是当属性值不存在时的默认返回值
    在这里插入图片描述

  3. hasattr:判断属性在类中是否存在,返回bool类型

在这里插入图片描述

  1. delattr:删除类中的属性,属性不存在时会报错。当需要删除类属性时,必须使用类名,而不是实例名,否则会报错
    在这里插入图片描述

七、其它注意点:

  1. 对象可以当做参数传递。
  2. 继承时,会将父类中的类方法同步继承
  3. 使用super()函数访问类方法时,如果子类同时继承类多个父类,并且每个父类均有相同的方法,使用super().方法名访问时,会采用就近原则。在这里插入图片描述
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-01-14 01:55:36  更:2022-01-14 01:57:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:17:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码