iOS开发人员如何学习Python编程15-面向对象编程1
面向对象编程(Object Oriented Programming
),简称OOP
,是一种程序设计思想。
面向过程与面向对象有什么区别?
面向过程:根据业务逻辑从上到下写代码;
面向对象:将数据与函数绑定到一起,进行封装。减少重复代码的重写过程。
类与对象介绍
类
是抽象的概念,仅仅是模板
。用来描述具有相同属性和方法的对象的集合。比如:
公司就可以表示成一个类。
某一个具体事物的存在,在现实世界中可以是看得见摸得着的。 比如:
阿里
代表了公司的中具体的一员。这就是对象。
类与对象的关系
在开发中,我们可以进行对象归类。
比如,分析班级同学公有特征归类:
option = { title: { text: '张三', subtext: '三年二班' }, tooltip: { trigger: 'item', formatter: "{a} <br/>{b} : {c}%" }, toolbox: { feature: { dataView: {readOnly: false}, restore: {}, saveAsImage: {} } }, series: [ { name:'漏斗图', type:'funnel', left: '10%', top: 60, //x2: 80, bottom: 60, width: '80%', // height: {totalHeight} - y - y2, min: 0, max: 100, minSize: '0%', maxSize: '100%', sort: 'descending', gap: 2, label: { show: true, position: 'inside' }, labelLine: { length: 10, lineStyle: { width: 1, type: 'solid' } }, itemStyle: { borderColor: '#fff', borderWidth: 1 }, emphasis: { label: { fontSize: 20 } }, data: [ {value: 60, name: '爱好'}, {value: 40, name: '年级'}, {value: 20, name: '年龄'}, {value: 80, name: '性别'}, {value: 100, name: '姓名'} ] } ] };复制代码
那么,我们就可以将三年二班学生公有的特征进行归类。而建立一个学生类:
option = { title: { text: '三年二班' }, tooltip: {}, series: [ { type: 'graph', layout: 'none', symbolSize: 70, label: { show: true }, edgeSymbol: ['circle', 'arrow'], edgeSymbolSize: [4, 10], edgeLabel: { fontSize: 10 }, data: [{ name: '三年二班学生类', x: 300, y: 300 }, { name: '张四', x: 800, y: 300 }, { name: '李三', x: 500, y: 100 }, { name: '王二麻子', x: 550, y: 500 }], // links: [], links: [{ source: 0, target: 1 }, { source: 0, target: 2 }, { source: 0, target: 3 }], lineStyle: { opacity: 0.9, width: 2, curveness: 0.2 } } ] }复制代码
类的构成
类由3个部分构成:
类的名称:类名
类的属性:一组数据
类的方法:允许对类进行操作的方法
⚠️注意: 类名通常采用驼峰式命名方式,尽量让字面意思体现出类的作用。Python
使用class
关键字来定义类,其基本结构如下:
class 类名: pass复制代码
Python
中,可以根据已经定义的类去创建出一个个对象:
对象名 = 类名()复制代码
定义一个完整的类:
# 定义 class 类名: def 方法名(self,参数): # 类中函数:称为方法 pass # 执行 s = 类名() # 创建对象(实例) 整个过程就是实例化 s.方法名(参数) # 调用类中方法复制代码
对象初始化
在类当中定义方法时,会发现系统帮我们自动创建了self
参数,并且在调用对象的该方法时,也无需传入self
参数。那这个self
是什么?
实际上,我们需要明确self
的两个概念:
self
本身是形参;self
就是对象本身。
__init__()
称为初始化方法,也可称为构造方法。在创建对象时,会自动执行该方法,为对象的属性设置初始值:
class Student(object): def __init__(self,name,age): self.name = name self.age = age def info(self): print(self.name,self.age) ls = Student("李四",18) ls.info()复制代码
__str__()
打印输出对象变量时,同时打印自定义的内容,将自定义内容通过return关键字返回:
class Students: def __init__(self): self.name = "李四" self.age = 18 def __str__(self): return self.name ls = Students() print(ls) # 李四
作者:茜茜的爸爸
链接:https://juejin.cn/post/7032453979086782501