python之面向对象简要剖析


__author__ = '李晓波'
Python面向对象简要剖析
如要下载附件阅读请将后缀改为.py,请使用"notepad++"打开此文档,"alt+0"将函数折叠后方便查阅
 
在python中一切皆为对象。面向对象编程的理论知识其实很好理解,说白了就是一堆名词,
把其中每个名词代表的含义,和他们之间的关系,面向对象就迎刃而解了。
python面向对象编程的基本名词:类、对象、方法、属性。
类和对象的关系:类是对象的抽象化,对象是类的实例化。类不代表具体的事物,而对象表示具体的事物。
直观的说:坏人指的是一类人,是一部分人的一个集合。那么你是一个坏人,因为你具备坏人的一些特性,
其中坏人就是一个类,你就是类中的的一个对象。但实际编程中类不是那么太好划分,还需你多多使用。
类和对象定义的变量叫属性(attribute):
其中类定义的叫类属性,对象定义的叫对象属性
类里的函数叫做方法(method):是对象的动作
结论:对象=属性+方法
类的常见使用场景,把具有相同属性和方法的对象归为一个类(class):
所以类经常用在:1、多个方法共用同样的变量,2、动态创建具有相同属性的对象。
类的三大特性:
多态:多态意味着可以对不同的对象使用同样的操作,但它们可能会以多种形态呈现出结果。
继承:面向对象的编程带来的主要好处之一是代码的重用,实现这种重用的方法之一是通过继承机制,
可先简单的理解为子类继承父类。
封装:类把所需要的属性和方法,封装在类中,其带来的好处有多个方法可以共用一组变量,
通过一个模板就可以创建多个对象。
类的成员:
字段(属性):静态字段,动态字段
方法:动态方法(类里函数),静态方法,类方法
属性:一种为类和对象的变量,另一种为方法加装饰器前提类必须是新式类,
1、@property 2、@方法名.setter  3、@方法名.deleter,访问时以字段形式(所以也称它为属性,自己的理解)
类成员修饰符:
在属性或方法前面加__(两个横杠),属性和方法就变为私有的,不可以被直接访问了。
引用某大神的图片,可更直观理解面向对象。其中个别名词不太一样,不要纠结,一个叫法而已

评论关闭