python对象怎么理解_python 面向对象简单理解

面向对象:

是一种程序设计范型

作用: 提高软件的重用性和灵活性,扩展性

世界万物一切皆为对象,对象即是指由特定状态,特征,行为的实体

知识点一: 代码的重用

举个栗子

比如小月月有了一个女朋友1,因为一些其他原因,这个女朋友1离开了,不久以后,小月月又

找到了一个女朋友2,那么这个女朋友2和女朋友1肯定是有一些基本的共性的 ,比如走路,

是个女性,都有自己的名字,这时候,如果小月月是个富二代,他想找个小三,小三也具有

这些基本的共性,所以他就可以很快的new出来一个小三,只需要在此基础上添加额外自己想要

的功能就可以了,我们把这些基本的功能写成代码这个时候

注意了:

通过面向对象,就可以实现一些基本功能的多次调用

疑点:通过函数式编程好像也可以实现类似代码重用的功能?

但是自己写的代码有时候需要传入一个参数,来告诉这个代码是谁在调用它,不然以前的去女朋友1来调用

这段代码的时候,你都不知道,想想是一件很恐怖的事情,所以通过面向对象就不需要传入参数 可以直接

调用,面向对象会自己识别,是谁在调用这段代码......

知识点二:代码的继承和封装

小月月是东北人 ,小月月生活的很幸福,他们生了一个boby,小月月当父亲了,这个boby会有一些地方

像小月月对吧 ,因为他是小月月的孩子嘛,帅气的外表,智慧的大脑 ,好了

注意了:

这个时候通过面向对象把小boby封装起来,继承小月月的(比如东北话)代码属性

疑点:函数式编程可以实现啊 ,为什么要用面对象呢?

函数式编程是通过字典的形式把这种父与子的关系写入到内存中,然后来实现继承一些代码属性,

所以写在内存中,这就允许了任何人都可以来改动,当然在我们现实生活中这是不允许的

而面向对象会把这个小boby封装起来,可以正常调用,并且保持继承的关系 外面的人不知道怎么实现的,

是改动不了的,所以你懂了....

知识点三: 多态

一个人可以对于吃来说,可以有不同的形式

比如说你可以站着吃饭 ,你也可以坐着吃饭

知识点四:类的定义

class Person(object): #声明了一个类

pass

people_one = Person("bds")

class :是一个抽象的,泛指的东西

Person: 代表所有人,一个物种,人的一些基本的特征 ,比如说名字,血液,毛发,

people_one: 这就是一个生动的现实的人类,是一个对象

一句话: people_one是通过class Person 实例化出来的一个对象

代码演示:

class Person(object):

def __init__(self,name) #初始化函数

self.name = name

def say_name(self):

print "my name is %s" % self.name

p_one = Person("bds")

p_one.say_name()

p_one是Person实例化的一个对象,在实例化对象时 ,就会执行初始化函数,所以比如一些基本的特征,属性

就可以通过初始化函数来定义

理解:什么样的特征需定义self呢?

一个吃的特征,每个人都是一样的,每个人都可以吃,所以这个就是大家共性的,就不需要初始化来区别,但是

比如名字,每个人的都不同的,所以这个name 就需要初始化函数来定义name,来区别每个人。

方法,属性,函数,功能

举个栗子

假如有一个杯子,他有各种各种的属性,长,宽,高,形状

它有一个功能之一是用来装水,我们调用这个装水的动作就叫做方法

函数实现各种功能 调用功能的动作就是方法

函数 --> 功能 --> 方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值