Python 面向对象编程
2017-03-06 23:07
113 查看
概述
面向过程:根据业务逻辑从上到下写垒代码函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可
面向对象:对函数进行分类和封装,让开发“更快更好更强...”
面向过程编程最易被初学者接受,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,即:将之前实现的代码块复制到现需功能处。
注:Java和C#来说只支持面向对象编程,而python比较灵活即支持面向对象编程也支持函数式编程
创建类和对象
面向对象编程是一种编程方式,此编程方式的落地需要使用 “类” 和 “对象” 来实现,所以,面向对象编程其实就是对 “类” 和 “对象” 的使用。类就是一个模板,模板里可以包含多个函数,函数里实现一些功能
对象则是根据模板创建的实例,通过实例对象可以执行类中的函数
class Person: def __init__(self, name ,age ,blood_type): self.name = name self.age = age self.blood_type = blood_type def detail(self): temp = "i am %s, age %s , blood type %s " % (self.name, self.age, self.blood_type) print temp zhangsan = Person('张三', 18, 'A') lisi = Person('李四', 73, 'AB') yangwu = Person('杨五', 84, 'A')
问题三:类和对象在内存中是如何保存?
答:类以及类中的方法在内存中只有一份,而根据类创建的每一个对象都在内存中需要存一份,大致如下图:
如上图所示,根据类创建对象时,对象中除了封装 name 和 age 的值之外,还会保存一个类对象指针,该值指向当前对象的类。
当通过 obj1 执行 【方法一】 时,过程如下:
根据当前对象中的 类对象指针 找到类中的方法
将对象 obj1 当作参数传给 方法的第一个参数 self
相关文章推荐
- Dave Python 练习十五 -- 面向对象编程
- [原创][Python 技术培训] 第二周讲稿.面向对象编程初步及图形界面编程 (第二版)
- python面向对象编程
- Python简明教程学习笔记5--面向对象编程
- python面向对象编程(1)——基本概念,术语,self,构造器
- python面向对象编程
- python面向对象编程-Class and Methods-<ThinkPython>
- Python 面向对象编程
- Python面向对象编程(二)
- Python学习 面向对象编程
- Dave Python 练习十五 -- 面向对象编程
- Python学习笔记 === python面向对象编程
- 简明Python3教程 13.面向对象编程
- python笔记之面向对象编程
- Python学习 面向对象编程(二) 随机序列迭代器
- Python面向对象编程基础解析(一)
- Dave Python 练习十五 -- 面向对象编程
- python面向对象编程__str__, __die__, __add__等
- 简明Python3教程 13.面向对象编程
- python面向对象编程(1)——基本概念,术语,self,构造器