类和对象

目标

  • 类和对象的概念
  • 类和对象的关系
  • 类的设计

01. 类和对象的概念

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

1.1 类

  • 是对一群具有 相同 特征 或者 行为 的事物的一个统称,是抽象的,不能直接使用

    • 特征 被称为 属性
    • 行为 被称为 方法
  • 就相当于制造飞机时的图纸,是一个 模板,是 负责创建对象的

1.2 对象

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

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

02. 类和对象的关系

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

03. 类的设计

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

在程序开发中,要设计一个类,通常需要满足一下三个要素:

  1. 类名 这类事物的名字,满足大驼峰命名法
  2. 属性 这类事物具有什么样的特征
  3. 方法 这类事物具有什么样的行为

大驼峰命名法

CapWords

  1. 每一个单词的首字母大写
  2. 单词与单词之间没有下划线

3.1 类名的确定

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

3.2 属性和方法的确定

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

提示:需求中没有涉及的属性或者方法在设计类时,不需要考虑

练习 1

需求

  • 小明 今年 18 岁身高 1.75,每天早上 完步,会去 东西
  • 小美 今年 17 岁身高 1.65,小美不跑步,小美喜欢 东西

练习 2

需求

  • 一只 黄颜色狗狗大黄
  • 看见生人 汪汪叫
  • 看见家人 摇尾巴

19python_类和对象相关推荐

  1. C++ 笔记(18)— 类和对象(this 指针、指向类的指针、类静态成员变量和函数)

    1. this 指针 在 C++ 中,每一个对象都能通过 this 指针来访问自己的地址. this 指针是所有成员函数的隐含参数.因此,在成员函数内部,它可以用来指向调用对象. 友元函数没有 thi ...

  2. C++ 笔记(16)— 类和对象(类定义、类实例对象定义、访问类成员、类成员函数、类 public/private/protected 成员、类对象引用和指针)

    1. 类的定义 类定义是以关键字 class 开头,后跟类的名称.并在它后面依次包含类名,一组放在 {} 内的成员属性和成员函数,以及结尾的分号. 类声明将类本身及其属性告诉编译器.类声明本身并不能改 ...

  3. C02-程序设计基础提高班(C++)第9周上机任务-类和对象

    第9周:阅读教材第8章(p231-262),主要内容是类和对象,学会定义类和对象解决问题,完成第9周上机任务: (回到C02-程序设计基础提高班(C++)学习安排) 实践任务: [任务1]阅读.运行下 ...

  4. 函数返回类的对象与拷贝构造函数

    C++中,如果我们在一个函数中,定义了一个类的对象,然后返回这个对象,在main函数中用一个对象去接受这个返回的对象的时候,这里面参与的函数调用大家可能不熟悉,这里通过程序和注释的方式给大家讲解一下. ...

  5. ZJU-java进阶笔记 第一、二周(类与对象,对象交互)

    对象变量是对象的管理者,而非所有者 VendingMachine vm = new VendingMachine(); this指代当前对象 成员函数可以直接(不需要点运算符)调用本类的其他成员函数 ...

  6. 3个题目熟悉类和对象基础

    1.按要求编写Java应用程序: (1)编写西游记人物类(XiYouJiRenWu)其中属性有:身高(height),名字(name),武器(weapon)方法有:显示名字(printName),显示 ...

  7. 刻意练习:Python基础 -- Task10. 类与对象

    背景 我们准备利用17天时间,将 "Python基础的刻意练习" 分为如下任务: Task01:变量.运算符与数据类型(1day) Task02:条件与循环(1day) Task0 ...

  8. java中具有继承关系的类及其对象初始化顺序

    先说结论 对于具有继承关系的类,它们的类和对象构造顺序为:父类的类构造器() -> 子类的类构造器() -> 父类成员变量的赋值和实例代码块 -> 父类的构造函数 -> 子类成 ...

  9. python的类和对象_Python类与对象实验

    一.任务描述 本实验任务主要对Python类与对象进行一些基本操作,通过完成本实验任务,要求学生熟练掌握Python类与对象的关系,并对Python类与对象的基本操作进行整理并填写工作任务报告. 二. ...

最新文章

  1. [leetcode] Minimum Path Sum
  2. 几则与西门子相关的消息
  3. 微服务该如何进行服务治理?
  4. qt 一定要指定大小吗 数组_Qt中数组的初始化 | 学步园
  5. python定时下载链接_python定时下载FTP指定文件
  6. javascript中call和apply的区别
  7. 【SSO-CAS】sso 之 cas 实现的几个问题
  8. eplan图纸怎么发给别人_手机拍的照片怎么打包发给别人
  9. linux中如何记录时间
  10. 小水智能-智能楼宇智慧建筑3D可视化系统,实现了数据的整合
  11. petalinux 前端包管理器(dnf)
  12. H3C PPP MP协议
  13. (C++)实现简单分数相加
  14. 地图随意搜---情景地图
  15. EDVR和FastDVD
  16. 搭档之家:李佳琦“双11”直播最低价,还是贵了?
  17. 凯撒密码(还原明文)
  18. 嵌套/双层循环中的continue和break详解
  19. jQuery选择器代码详解(一)——Sizzle方法
  20. foc学习笔记1——准备工作

热门文章

  1. MediaCodec API笔记
  2. fluentd tail mysql_fluentd缓冲区Buffer(五)
  3. MYSQL数据库初窥门径, SQL语句地熟练使用, 图形化界面提高效率
  4. 梅花时间起卦小程序(基于Java基础)
  5. 说说Flutter中的Semantics
  6. 统信UOS卸载php7.2.24,安装php7.4.27 ;卸载再安装为PHP 7.2.34
  7. 池建强:从锤子到极客邦科技,我的职业生涯巡礼丨今晚直播!
  8. 什么更重要 - 有兴趣目标还是成绩优
  9. 00-创建WTM项目
  10. 每天学习10句英语-第十天