当前位置: 首页 > news >正文

测开学习DAY23

黑马程序员网课学习(Python)

一、封装(定义类的过程)

1. 案例(存放家具)

2. 私有和公有

案例:

3. 对象的划分

Python 中一切皆对象. 即使用 class 定义的类也是一个对象

(1)实例对象(实例)

① 通过 类名() 创建的对象, 我们称为实例对象,简称实例

② 创建对象的过程称为是类的实例化

③ 我们平时所说的对象就是指 实例对象(实例)

④ 每个实例对象, 都有自己的内存空间, 在自己的内存空间中保存自己的属性(实例属性)

(2)类对象(类)

① 类对象 就是 类, 或者可以认为是 类名

② 类对象是 Python 解释器在执行代码的过程中创建的

③ 类对象的作用:

  • 使用类对象创建实例 类名(),
  • 类对象也有自己的内存空间, 可以保存一些属性值信息 (类属性)

④ 在一个代码中, 一个类只有一份内存空间

4. 属性的划分
(1)实例属性

① 概念: 是 实例对象 具有的属性

② 定义和使用:

  • 在 init 方法中, 使用 self.属性名 = 属性值 定义
  • 在方法中是使用 self.属性名 来获取(调用)

③ 内存:实例属性,在每个实例中都存在一份

④ 使用时机:

  • 基本上 99% 都是实例属性,即通过 self 去定义
  • 找多个对象,来判断这个值是不是都是一样的, 如果都是一样的, 同时变化,则一般定义为类属性, 否则定义为实例属性
(2)类属性

① 概念: 是 类对象 具有的属性

② 定义:在类内部,方法外部,直接定义的变量 ,就是类属性

③ 使用:  

  • 类对象.属性名 = 属性值  or  类名.属性名 = 属性值
  • 类对象.属性名  or  类名.属性名

④ 内存:只有类对象中存在一份

(3)案例

5. 方法的划分

方法, 使用 def 关键字定义在类中的函数就是方法

(1)实例方法(最常用)

① 定义:

② 定义时机(什么时候用):

如果在方法中需要使用实例属性(即需要使用 self), 则这个方法必须定义为实例方法

③ 调用:

(2)类方法(会用)

① 定义:

② 定义时机(什么时候用):

  • 前提, 方法中不需要使用实例属性(即 self)
  • 用到了类属性, 可以将这个方法定义为类方法,(也可以定义为实例方法)

③ 调用:

(3)静态方法(基本不用)

① 定义:

② 定义时机(什么时候用):

  • 前提, 方法中不需要使用实例属性(即 self)
  • 也不使用类属性, 可以将这个方法定义为静态方法

③ 调用:

(4)案例

① 基本版本

② 优化(使用 类方法和静态方法)

二、继承

  • 继承描述的是类与类之间的关系
  • 继承的好处: 减少代码的冗余(相同的代码不需要多次重复书写), 可以直接使用
1. 语法

2. 案例

3. 结论

4. 重写

(1)覆盖
  • 直接在子类中定义和父类中名字相同的方法
  • 直接在方法中书写新的代码

(2)扩展
  • 直接在子类中定义和父类中名字相同的方法
  • 在合适的地方调用父类中方法 super().方法()
  • 书写添加的新功能

三、多态(了解)

1. 是一种写代码,调用的一种技巧

2. 同一个方法, 传入不同的对象, 执行得到不同的结果, 这种现象称为是多态

3. 多态可以增加代码的灵活度-------- 哪个对象调用方法, 就去自己的类中去查找这个方法, 找不到去父类中找

四、补充

http://www.dtcms.com/a/573483.html

相关文章:

  • 站长之家域名信息查询微信店铺怎么开
  • 复盘Netflix的2025:广告业务、线下业态和视频播客
  • AI生成音频:技术概述与实践指南
  • 使用expo打包react native项目时候报错Failed to upload the project tarball to EAS Build
  • think-cell 无法与 WPS Office 搭配使用
  • Maleimido-mono-amide-DOTA,1006711-90-5功能特性与核心优势
  • 网站建设捌金手指花总二用别人代码搭建网站
  • 【萌笔趣棋】项目开发
  • CSS Float(浮动)详解
  • T41LQ 一款高性能、低功耗的系统级芯片(SoC) 适用于各种AIoT应用智能安防、智能家居方案优选T41L
  • 北京网站手机站建设公司电器 东莞网站建设
  • 重庆最专业的房产网站建设淮北建设工程交易中心
  • 云浮哪有做网站公司wordpress内容只有自已可见
  • 6.游戏逆向-pxxx-GName加密算法(解密)
  • ComfyUI-RyanOnTheInside:开启ComfyUI动态交互创作新时代
  • JavaEE初阶,网络原理HTTP报头篇
  • 数据科学每日总结--Day11--区块链
  • 【腾讯拥抱开源】KaLM-Embedding-Gemma3-12B-2511:一款基于谷歌Gemma的特征提取模型
  • 南阳seo网站建设费用学ps有用还是网页制作
  • 疫苗最新官方消息优化大师有必要安装吗
  • 新闻速递丨Altair RapidMiner 数据分析和 AI 平台助力企业加速智能升级:扩展智能体 AI 及分析生态系统
  • C# ZipArchive 加压解压zip文件
  • 律师怎么做网站只做正品的购物网站
  • 珠宝网站策划挂别人公司做网站可以吗
  • Nine.fun全球KOL合作计划|以现实娱乐为舞台,构建Web3文化共创生态
  • 面向 Spring Boot 的 JVM 深度解析
  • SCRM工具测评:助力企业微信私域运营的核心功能解析
  • Web3.js 全面解析
  • 企业微信AI聊天agent:优化企业微信客户运营的推荐工具
  • 怎么做文化传播公司网站wordpress免费企业