美文网首页
python面向对象(上)

python面向对象(上)

作者: youngkun | 来源:发表于2017-07-25 21:49 被阅读0次

    面向对象(上)

    1.什么是面向对象?

    面向对象是一种编程思想,就是一种解决问题的思路,将项目中不同的数据封装成类型来进行使用。是对面向过程的补充和完善。

    面向对象有三大特征:封装、继承、多态。

    2.对象的概念:

    万物皆对象,通过属性和行为来描述一个对象。对象可以包含任意数量和类型的数据。

    对象,就是实际存在的物体,也称实体,是类型表示的具体实际存在实物的实例化。

    python中对象是通过类定义的数据结构实例实现的,即对象是类的实例化。Python中通过类和对象,以及对象之间的相互调用完成一定的功能,来体现面向对象的编程思想。

    3.类的概念:

    类就是类型、数据类型的简称,是从一部分实际存在具有相似的特征和行为的实物中抽象出来的一个概念。

    4.类和对象的区别:

    类是对象的抽象化,描述具有相同属性和方法的所有对象的集合。

    类不代表具体的事物,而对象表示具体的事物。

    5.如何定义类

    定义一个类的形式如下:

    类一般有几个组成部分:类型的名称、属性、方法。

    通过class关键字,来定义一个自定义类型

    通过__init__()函数来初始化类的属性数据

    通过普通函数,定义类的行为方式。如:

    图1 定义类的实例图

    注意类的方法的第一个参数永远是self,self指向类的本身。

    classPerson(object):#Person为类型的名称

    def __init__(self, name, sex, age):#name、sex、age为属性,__init__初始化数据

    defmarry(self, person)#def marry为方法

    类属性定义

    类的一般属性:self.attrs

    类的私有属性:self.__private_attrs,以两个下划线开头不能在类的外部被直接访问的属性,即无法在类实例化后直接访问或引用该数据。

    类方法定义

    类的一般方法定义:def

    func(self):

    类属性和类方法的比较

    属性一般意味着从内存中直接拿出之前存储的值。方法意味着需要一定的处理。

    6.怎样创建对象?

    和执行函数一样,直接通过类的名称来创建对象,如:u = Users()

    7.创建对象,怎样使用对象属性?

    对象的属性,可以直接通过对象的引用变量.属性名称来使用,如:u.username

    8.创建的对象,怎样使用对象的方法?

    对象的方法,可以直接通过对象的引用变量.方法名称()来调用方法

    9.创建对象的过程是什么?

    首先,创建对象,会调用对象的__new__()函数,来申请内存,创建对象

    其次,给创建好的对象,初始化对象的数据,自动调用__init__()函数,给对象的属性赋值

    图2  创建对象过程图

    10.创建好的对象,赋值给一个变量,变量是什么类型?存放的是什么数据?

    变量=名称()创建了一个对象,将对象的引用地址,赋值给变量

    变量(内存地址)—>堆内存中的对象

    Type(变量)—>类型

    11.总结:

    面向对象编程是一种编程方式,此编程方式的落地需要使用“类”和“对象”来实现,所以,面向对象编程其实就是对“类”和“对象”的使用。

    类就是一个模板,模板里可以包含多个函数,函数里实现一些功能

    对象则是根据模板创建的实例,通过实例对象可以执行类中的函数

    相关文章

      网友评论

          本文标题:python面向对象(上)

          本文链接:https://www.haomeiwen.com/subject/vimgkxtx.html