目录
面向对象是相对于面向过程而言的,它是一种
对现实世界理解和抽象的方法
,是计算机编程技术
发展到一定阶段的产物
。
向过程编程
主要是
分析出实现需求所需要的步骤
,通过函数一步一步实现这些步骤,接着依次调用函数即可。
面向对象编程
则是
分析出需求中涉及到哪些对象
,这些对象各自有哪些特征、有什么功能,对象之间存在何种关系
等,将存在共性的事物或关系抽象成类。最后通过对象的组合和调用完成需求。
面向过程编程性能更高,适合于
简单系统,容易理解
。面向对象编程易维护、易扩展、易复用,适合于
复杂系统,灵活方便
。
1、
类和对象
对象
是指实实在在存在的各种事物,例如某张桌子、某辆汽车、某个学生等。对象通常包含两部分信息:
属性
和
行为
。一般使用
变量表示对象的属性
,用
函数或方法表示对象的行为
。
类
是用来描述一组
具有相同属性和行为的对象的模板
,是对这组对象的
概括
、
归纳
和
抽象表达
。
现实世界中,
先有对象后有类
,物以类聚;而在计算机的世界里,
先有类后有对象
。在面向对象程序设计中,先在类中定义共同的属性和行为,然后
通过类创建具有特定属性值和行为的实例
,这便是对象。类不是一种具体存在,实例才是具体存在。
(1)Python中类的定义
类的定义举例:
(2)对象的创建
类是一种抽象概念,要使用类的功能,就必须进行
类的实例化
,即创建类的对象。例如矩形是一种抽象概念,长为 5 宽为 3的矩形就是具体的矩形对象。
创建类的对象的方式类似函数调用方式:
对象名 = 类名(参数列表)
注意
:程序通过类的
__init__()
方法接受(参数列表)中的参数,
参数列表中的参数要与__init__()方法中除了 self 以外的参数匹配
。
2、
类中的变量
成员变量用于
存储或描述类和对象属性信息
,根据位置不同可分为:
类变量
和
实例变量
。成员变量可以
被该类中定义的方法访问
,也可以
在外部通过对象进行访问
,而在方法体中定义的
局部变量
,则
只能在方法内进行访问
。
(1)实例变量
实例变量
在方法内部通过“
self.
变量名
”
定义的变量,注意和局部变