iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python之路day06 面向对象
  • 617
分享到

python之路day06 面向对象

之路面向对象python 2023-01-30 22:01:02 617人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

面向对象(你就是上帝): 世间万物,皆可分类 世界万物,皆为对象 https://www.cnblogs.com/alex3714/articles/5188179.html 面向对象编程 OOP编程是利用“类”和“对象”来创建各种模型来

面向对象(你就是上帝):

世间万物,皆可分类

世界万物,皆为对象

https://www.cnblogs.com/alex3714/articles/5188179.html

面向对象编程

OOP编程是利用“类”和“对象”来创建各种模型来实现对真实世界的描述,使用面向对象编程的原因一方面是因为它可以使程序的维护和扩展变得更简单,并且可以大大提高程序开发效率 ,另外,基于面向对象的程序可以使它人更加容易理解你的代码逻辑,从而使团队开发变得更从容。

面向对象的几个核心特性如下

Class 类
一个类即是对一类拥有相同属性的对象的抽象、蓝图、原型。在类中定义了这些对象的都具备的属性(variables(data))、共同的方法

Object 对象 
一个对象即是一个类的实例化后实例,一个类必须经过实例化后方可在程序中调用,一个类可以实例化多个对象,每个对象亦可以有不同的属性,就像人类是指所有人,每个人是指具体的对象,人与人之前有共性,亦有不同

Encapsulation 封装
在类中对数据的赋值、内部调用对外部用户是透明的,这使类变成了一个胶囊或容器,里面包含着类的数据和方法

Inheritance 继承
一个类可以派生出子类,在这个父类里定义的属性、方法自动被子类继承

Polymorphism 多态
多态是面向对象的重要特性,简单点说:“一个接口,多种实现”,指一个基类中派生出了不同的子类,且每个子类在继承了同样的方法名的同时又对父类的方法做了不同的实现,这就是同一种事物表现出的多种形态。
编程其实就是一个将具体世界进行抽象化的过程,多态就是抽象化的一种体现,把一系列具体事物的共同点抽象出来, 再通过这个抽象的事物, 与不同的具体事物进行对话。
对不同类的对象发出相同的消息将会有不同的行为。比如,你的老板让所有员工在九点钟开始工作, 他只要在九点钟的时候说:“开始工作”即可,而不需要对销售人员说:“开始销售工作”,对技术人员说:“开始技术工作”, 因为“员工”是一个抽象的事物, 只要是员工就可以开始工作,他知道这一点就行了。至于每个员工,当然会各司其职,做各自的工作。
多态允许将子类的对象当作父类的对象使用,某父类型的引用指向其子类型的对象,调用的方法是该子类型的方法。这里引用和调用方法的代码编译前就已经决定了,而引用所指向的对象可以在运行期间动态绑定

 

本质(自己理解):

class Role:
   n=14222#类变量
   name=’我是类变量‘
def __init__(self,name,role,weapon,money): #构造函数,在实例化时做一些类的初始化工作      self.name=name#实例变量,作用域是实例本身 self.role=role self.weapon=weapon self.money=money def gun(self): print('%s has gun someone!'%self.name) def be_gun(self): print('%s has been gun '%self.name) def buy_gun(self): print('%s has brought %s'%(self.name,self.weapon)) def show_status(self): print(self.name,self.role, self.weapon, self.money) r1=Role('cjl','ploice','ak47','15000') '''本质:1.对象实例化过程中,实际上是对面名(变量) 传入到了Role.__init__()中————>r1=Role('cjl','ploice','ak47','15000')(开辟了新空间) ---->self.name=r1.name/self.role=r1.role等等 2.当调用类方法时,实质r1.gun()=Role.gun(r1) (self的作用就可以看出来了) ''' r2=Role('cjl','tufei','m14','15000')

print(r1.n,r1.name)#先找实例变量,若无在去类变量中找(name的例子)


r2.weapon_prove= True#可以向实例中添加属性
print(r2.weapon_prove)

r2.n='修改类变量?'#本质:添加了一个新的属性
print(r2.n)#查找变量的顺序,先实例变量-->在到类变量
print(r1.n)

  

 

  

 
r2.weapon_prove= True#可以向实例中添加属性
print(r2.weapon_prove)

r2.n='修改类变量?'#本质:添加了一个新的属性
print(r2.n)#查找变量的顺序,先实例变量-->在到类变量
print(r1.n)

--结束END--

本文标题: python之路day06 面向对象

本文链接: https://www.lsjlt.com/news/179713.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python之路day06 面向对象
    面向对象(你就是上帝): 世间万物,皆可分类 世界万物,皆为对象 https://www.cnblogs.com/alex3714/articles/5188179.html 面向对象编程 OOP编程是利用“类”和“对象”来创建各种模型来...
    99+
    2023-01-30
    之路 面向对象 python
  • Python面向对象之面向对象基本概念
    面向过程和面向对象概念 过程和函数:过程类似于函数,只能执行,但是没有返回结果;函数不仅能执行,还能返回结果。 面向过程和面向对象 基本概念 面向过程-怎么做 把完成某一个需求的所有步骤从头到尾逐步实现; 根据开发需求,将某些功能独立的...
    99+
    2023-01-31
    面向对象 基本概念 Python
  • Python面向对象之类和对象
    目录类定义类定义类和属性类中方法对象方法(普通方法)类方法静态方法魔术方法对象创建对象对象属性总结 类 定义类 所有类名首字母要求大写,多个单词时遵循驼峰命名法 所...
    99+
    2024-04-02
  • python之初始面向对象
    1. 初识面向对象   面向过程:     一切以事务的发展流程为中心.   面向对象:     一切以对象为中心. 一切皆为对象. 具体的某一个事务就是对象 2. 类. 对象 ...
    99+
    2023-01-30
    面向对象 python
  • python 面向对象之多态
    多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。那么,多态的...
    99+
    2023-01-30
    面向对象 多态 python
  • python之成员(面向对象)
    1. 成员   在类中你能写的所有内容都是类的成员    class Person: def __init__(self, name, gender): self.name = name # 成员...
    99+
    2023-01-30
    面向对象 成员 python
  • python 面向对象之变量
    类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。实例变量:定义在方法中的变量,只作用于当前实例的类。类变量的用途?大家公共的属性,节省开销看下面一段代码class Role...
    99+
    2023-01-30
    变量 面向对象 python
  • python面向对象之反射
    一、静态方法(staticmethod)和类方法(classmethod)类方法:有个默认参数cls,并且可以直接用类名去调用,可以与类属×××互(也就是可以使用类属性)静态方法:让类里的方法直接被类调用,就像正常调用函数一样类方法和静态方...
    99+
    2023-01-31
    反射 面向对象 python
  • python 面向对象之继承
    文章目录 前言继承的概念单继承多继承子类重写父类的同名方法和属性子类调用父类同名的方法和属性多层继承私有权限 前言 前面我们已经学习了 python 面向对象的类和对象,那么今天我将为大...
    99+
    2023-09-01
    python 开发语言
  • Python面向对象之入门类和对象
    目录什么是面向对象编程?定义类,从具体代码来感受吧!多个类和对象的观察补充一下类的属性(数据部分)总结什么是面向对象编程? 我们是不是听过面向过程,拿来放在一起对比就比较好理解了。 ...
    99+
    2024-04-02
  • python面向对象之类成员
    一、概述       上篇《python面向对象OOP》介绍了python面向对象的基础初级入门部分,提到了类的定义,使用,类的三大特性;经典类,新式类在查找时的区别等,有了前面的基础,本文接着描述面向对象中类成员;先整体描述下,类中的成员...
    99+
    2023-01-31
    面向对象 成员 python
  • python 面向对象之类方法
    类方法通过@classmethod装饰器实现,类方法和普通方法的区别是, 类方法只能访问类变量,不能访问实例变量举个例子class Dog(object):     def __i...
    99+
    2023-01-30
    面向对象 方法 python
  • JavaScala之面向对象
    目录Scala包:基础语法:Scala包的三大作用:包名的命名规范:写包的好处:包对象:导包说明:类和对象:定义类:封装:构造器:主从构造器的加载机制:继承:基础语法:抽象属性:多态...
    99+
    2023-05-15
    Java Scala面向对象 Java Scala
  • 【python】面向对象编程之@prop
      @property装饰器作用:把一个方法变成属性调用 使用@property可以实现将类方法转换为只读属性,同时可以自定义setter、getter、deleter方法   @property&@.setter class ...
    99+
    2023-01-31
    面向对象 python prop
  • python面向对象
    python面向对象 目录: 1.类的定义和使用 2.类的封装 3.类的继承 4.多态   1.类的定义和使用 查、增加、修改、删除、初始化方法、实例化 __init__()方法是一种特殊的方法,被称为类的构造函数或初始化方法,当创建了这...
    99+
    2023-01-30
    面向对象 python
  • python 面向对象、类、对象
    class 类 object 对象 object-oriented programming 面向对象,简称OOP attribute 属性 method 方法 inheritance 继承 python中通过类和对象来实现 ...
    99+
    2023-01-31
    面向对象 对象 python
  • python 面向对象
    面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。面向过程的程序设计把计算机程序视为一系列的命令集合,即一组函数的顺序...
    99+
    2023-01-30
    面向对象 python
  • Python|面向对象
    #一、类、对象定义及使用 #定义类语法:class 类名(父类):代码块注意:()可有可无 #class Student: #class Student(): #创建对象(实例)语法:对象名=类名() 注意:Java语言在实例化对...
    99+
    2023-01-30
    面向对象 Python
  • python 面向对象之继承顺序
    先来看一个经典类class A:     def __init__(self):         p...
    99+
    2023-01-30
    面向对象 顺序 python
  • Python全栈之面向对象基础
    目录1. 面向对象oop了解2. 对象的相关操作小提示:3. 类的相关操作4. 类对象的删除操作小提示:5. 小练习小提示:答案:总结1. 面向对象oop了解 # ### oop...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作