博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Python 面向对象】面向对象[OOP]基本概念,类和对象
阅读量:2038 次
发布时间:2019-04-28

本文共 1210 字,大约阅读时间需要 4 分钟。

【Python 面向对象】面向对象[OOP]基本概念,类和对象

面向对象编程 —— Object Oriented Programming 简写 OOP

1. 初识面向对象

1.1 过程和函数

过程 是早期的一个编程概念

过程 类似于函数,只能执行,但是没有返回值
函数 不仅能执行,还可以返回结果

1.2 面相过程 和 面相对象 基本概念

  • 面相过程 —— 怎么做?

    把完成某一个需求的 所有步骤 从头到尾 逐步实现
    根据开发需求,将某些 功能独立 的代码 封装 成一个又一个 函数
    最后完成的代码,就是顺序地调用 不同的函数

  • 特点

    注重 步骤与过程,不注重职责分工
    如果需求复杂,代码会变得很复杂
    开发复杂项目,没有固定的套路,开发难度很大!

  • 面向对象 —— 谁来做?

    相比较函数,面向对象 是 更大封装,根据 职责 在 一个对象中 封装 多个方法
    在完成某一个需求前,首先确定 职责 —— 要做的事情(方法)
    根据 职责 确定不同的 对象,在 对象 内部封装不同的 方法(多个)
    最后完成的代码,就是顺序地让 不同的对象 调用 不同的方法

  • 特点

    注重 对象和职责,不同的对象承担不同的职责
    更加适合应对复杂的需求变化,是专门应对复杂项目开发,提供的固定套路
    需要在面向过程基础上,再学习一些面向对象的语法

我们可以把相同的属性,行为归类。

2. 类和对象的概念

对象是面向对象编程的两个核心概念

2.1 类

  • 是对一群具有 相同 特征 或者 行为 的事物的一个统称,是抽象的,不能直接使用
  1. 特征被称为属性
  2. 行为被称为方法
  • 就相当于制造飞机时的图纸,是一个 模板,是 负责创建对象的

在这里插入图片描述

2.2 对象

  • 对象由类创建出来的一个具体存在,可以直接使用
    哪一个类 创建出来的 对象,就拥有在 哪一个类 中定义的:
  1. 属性
  2. 方法
  • 对象 就相当于用 图纸 制造 的飞机

在程序开发中,应该 先有类,再有对象

2.3 类和对象的关系

  • 模板对象 是根据 这个模板创建出来的,应该 先有类,再有对象
  • 只有一个,而 对象 可以有很多个
  1. 不同的对象 之间 属性 可能会各不相同
  • 中定义了什么 属性方法,对象 中就有什么属性和方法,不可能多,也不可能少

2.4 类的设计

在使用面相对象开发前,应该首先分析需求,确定一下,程序中需要包含哪些类!

例如我们之前植物大战僵尸中的归类

  • 在程序开发中,要设计一个类,通常需要满足一下三个要素:
  1. 类名 这类事物的名字,满足大驼峰命名法
  2. 属性 这类事物具有什么样的特征
  3. 方法 这类事物具有什么样的行为
  • 大驼峰命名法
    每一个单词的首字母大写
    单词与单词之间没有下划线

2.4.1 类名的确定

名词提炼法 分析 整个业务流程,出现的 名词,通常就是找到的类

2.4.2 属性和方法的确定

  • 对象的特征描述,通常可以定义成 属性
  • 对象具有的行为(动词),通常可以定义成 方法

转载地址:http://piyof.baihongyu.com/

你可能感兴趣的文章
基于Docker的CaaS容器云平台架构设计
查看>>
几张图帮你理解 docker 基本原理及快速入门
查看>>
理解Docker架构
查看>>
基于Docker和Kubernetes的最佳架构实践
查看>>
Kubernetes实现SSO登录 (二)
查看>>
从 Spring Cloud 看一个微服务框架的「五脏六腑」
查看>>
使用Docker高效搭建开发环境
查看>>
微服务下的数据架构
查看>>
Nginx 容器教程
查看>>
linux下的命令: sudo ln -s 源文件 目标文件
查看>>
关于 Mybatis mapping.xml中的 StatementType 知识点
查看>>
小议“悲观锁和乐观锁”的原理、场景、示例
查看>>
面试中的这些坑,你踩过几个?
查看>>
socket,tcp,http三者之间的区别和原理
查看>>
HTTP协议详解
查看>>
Java经典基础与高级面试36题和答案
查看>>
Java解析xml文档
查看>>
面试题: 面向切面编程(AOP)的理解
查看>>
(京东面试题)java动态代理主要怎么实现的,spring aop 原理 如下类
查看>>
Spring AOP 最热门面试题及答案
查看>>