美文网首页
[Python]关于面向对象(上)

[Python]关于面向对象(上)

作者: 岁月神偷_bde8 | 来源:发表于2017-09-05 20:43 被阅读0次

    1.什么是面向对象?特征是什么?

    面向对象是一种编程思路,是一种软件开发的方法。面向对象有三大特征:⑴封装 ⑵继承 ⑶多态

    2.面向对象和面向过程的区别是什么?各自的优缺点是什么?

    面向过程是分析出解决问题所需要的所有步骤,然后用函数把这些步骤一步步的实现,使用的时候在一个一个依次调用就可以了。

    面向对象是把构成问题的事务分为不同的对象,建立对象的目的不是为了完成某个步骤,而是为了描述某个或某些函数在解决问题的步骤中的行为。

    面向对象是以功能来划分问题,而不是根据步骤划分。

    所以面向过程的优点是性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的因素。缺点是没有面向对象易维护、易复用、易扩展。面向对象的优点是易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性,可以设计出低耦合的系统,使系统更加灵活、更加易于维护。缺点是性能比面向过程低。

    3.对象是什么?类又是什么?两者有什么关系?

    对象:

    对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机都可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件等。

    类:

    具有相同特性的(数据元素)和行为(功能)的对象的抽象就是类。比如”人“、”飞机“、”鸟“

    等,这些就是抽象的类,当他们具体到某个人,某架飞机和某只鸟时,就会有具体的人名,机架号,鸟名。

    关系:

    对象的抽象是类,类的具体化就是对象。也可以说类的实例就是对象,类实际上就是一种数据类型,它用数据结构来描述类的属性。

    4.怎么定义一个类?

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

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

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

    d)通过普通函数,定义类的行为方法

    5.怎么创建一个对象?

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

    6.创建的对象,怎么使用对象的属性?

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

    7.创建的对象,怎么使用对象的方法?

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

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

    a)首先,创建对象,会调用对象的__new__()函数,来申请内存,创建对象(过程中是如此,但程序中通通常不用写__new__()函数)

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

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

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

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

    c)type(变量) -->类类型

    相关文章

      网友评论

          本文标题:[Python]关于面向对象(上)

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