万物皆对象之Python中类的概念


在这里插入图片描述

1、面向对象基本概念

1.1 万物皆对象

  • Python语言的中所有数据类型都是对象、函数是对象、模块是对象
  • Python所有类都是继承最基础的类object
  • Python语言中的数据类型的操作功能都是类方法的体现

1.2 面向对象编程

面向对象编程又叫OOP(Object-Oriented-Programming)

OOP:面向对象编程,一种编程思想,重点在于高抽象的复用代码

  • OOP把对象当做程序的基本单元,对象包含数据和操作数据的函数
  • OOP本质是把问题解决抽象为以对象为中心的计算机程序
  • OOP在较大规模或复杂项目中十分有用,OOP可以提高协作产量
  • OOP最主要的价值在于代码复用
  • OOP仅仅是一个编程方式,并非解决问题的高级方法

面向过程与面向对象的区别

面向过程以解决问题的过程步骤为核心编写程序的方式,面向对象以问题对象构建和应用为核心编写程序的方式,所有能用OOP解决的问题,面向过程都能解决。

1.3 面向对象的特征

**封装(Encapsulation) :**属性和方法的抽象,用数据和操作数据的方法来形成对象逻辑

方法的抽象:对类的属性(变量)进行定义、隔离和保护

  • **对象的抽象:**对类的方法(函数)进行定义、隔离和保护
  • 目标是形成一个类对外可操作属性和方法的接口

**继承:**代码复用的高级抽象,用对象之间的继承关系来形成代码复用

继承是面向对象程序设计的精髓之一

  • 实现了以类为单位的高抽象级别的代码复用
  • 继承是新定义类能够几乎完全使用原有类属性与方法的过程

**多态:**方法灵活性的抽象,让对象的操作更加灵活、更多复用代码

参数类型的多态:一个方法能够处理多个类型的能力

  • **参数形式的多态:**一个方法能够接受多个参数的能力
  • 多态是OOP的一个传统概念,Python天然支持多态,不需要特殊语法

2、Python面向对象的术语

类(Class)和对象(Object

  • **类:**逻辑抽象和产生对象的模板,一组变量和函数的特定编排
  • **对象:**具体表达数据及操作的实体,相当于程序中的“变量”。包括:类对象、实例对象

类定义完成后,默认生成一个类对象,每个类唯一对应一个类对象,用于存储这个累的基本信息 类对象是type的实例,表达为type类型;

  • 实例对象(Instance Object):Python类实例后产生的对象,简称:对象
  • 类对象全局只有一个,实例对象可以生成多个

**属性:**存储数据的“变量”(就是定义在类中的变量),用来描述类的一些特性参数。包括:类属性、实例属性

  • **类属性(Class Attribute):**类对象的属性,由所有实例对象共享;类内定义,在__init__函数外面。一般是类所共有的属性定义为类属性。
  • **实例属性(Instance Attribute):**实例对象的属性,一般在类中的函数中定义,实例属性可能为某个实例独有。

**方法:**操作数据的“方法”(就是定义在类中的变量),用来给出类的操作功能。包括:类方法、实例方法、自由方法、静态方法、保留方法

  • **类方法(Class Method):**类对象的方法,由所有实例对象共享
  • **实例方法(Instance Method):**实例对象的方法,由各实例对象独享,最常用的形式、
  • **自由方法(Namespace Method):**类中的一个普通函数,由类所在命名空间管理,类对象独享
  • **静态方法(Static Method):**类中的一个普通函数&#
  • 24
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值