python面向对象(一、基本概念)

1.面向对象(OOP)基本概念
面向对象编程 — Object Oriented Programming 简写 OOP

1.1 面向对象基本概念
我们之前学习的编程方式就是面向过程的
面相过程和面相对象,是两种不同的编程方式
对比面向过程的特点,可以更好地了解什么是面向对象

1.2 过程和函数(科普)
过程 是早期的一个编程概念
过程 类似于函数,只能执行,但是没有返回值
函数 不仅能执行,还可以返回结果

1.3 面相过程和面相对象 基本概念
1)面相过程 — 怎么做?
a)把完成某一个需求的所有步骤从头到尾逐步实现
b)根据开发需求,将某些功能独立的代码封装成一个又一个函数
c)最后完成的代码,就是顺序地调用不同的函数
特点:
a)注重步骤与过程,不注重职责分工
b)如果需求复杂,代码会变得很复杂
c)开发复杂项目,没有固定的套路,开发难度很大!

2 )面向对象 — 谁来做?
相比较函数,面向对象是更大的封装,根据职责在一个对象中封装多个方法
a)在完成某一个需求前,首先确定职责 — 要做的事情(方法)
b)根据职责确定不同的对象,在对象内部封装不同的方法(多个)
c)最后完成的代码,就是顺序地让不同的对象调用不同的方法
特点:
a)注重对象和职责,不同的对象承担不同的职责
b)更加适合应对复杂的需求变化,是专门应对复杂项目开发,提供的固定套路
c)需要在面向过程基础上,再学习一些面向对象的语法

1.4 类和对象
1.4.1 类和对象的概念
类和对象是面向对象编程的两个核心概念
1)类
类是对一群具有相同特征或者行为的事物的一个统称,是抽象的,不能直接使用。
特征被称为属性
行为被称为方法
类就相当于制造飞机时的图纸,是一个模板,是负责创建对象的

2)对象
对象是由类创建出来的一个具体存在,可以直接使用
由哪一个类创建出来的对象,就拥有在哪一个类中定义的:属性和方法
对象就相当于用图纸制造的飞机
在程序开发中,应该先有类,再有对象

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

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

1)类的三要素
在程序开发中,要设计一个类,通常需要满足一下三个要素:
a)类名 这类事物的名字,满足大驼峰命名法
b)属性 这类事物具有什么样的特征
c)方法 这类事物具有什么样的行为

2)类名要使用大驼峰命名法
CapWords
a)每一个单词的首字母大写
b)单词与单词之间没有下划线

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

4)属性和方法的确定
a)对对象的特征描述,通常可以定义成属性
b)对象具有的行为(动词),通常可以定义成方法
提示:需求中没有涉及的属性或者方法在设计类时,不需要考虑

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

练习 2
一只黄颜色的狗狗叫大黄
看见生人汪汪叫
看见家人摇尾巴

posted on 2020-12-02 08:50  叮当2000  阅读(298)  评论(0编辑  收藏  举报