前言
唉唉唉,看啥呢,这可没有什么美女萌妹子,我说的对象是第二次“面向对象”,第二次谈到面向对象简直是谈到了熟悉的陌生人啊,熟悉而与陌生啊!!
下面我们来说说为什么是先熟悉。因为我在大学大一的时候接触到了C语言,那时候还是面向过程的初级学习,但是却根本就不知道什么是面向过程,知道听到班里一位大神讲到:“哎,这C语言都是讲到最基础的面向过程编写,现在市场主流都是面向对象了,而且比这玩意简单多了。”听到这个我当时就对我们这位同学的感觉就是:我曹!这绝对是 位大神啊!这时,“面向对象“这个词语第一次 出现在了我的生活中!
然而,这时的面向对象在我的意识中还只是个初步印象,可是,等到后来的学习中,我们的老师多次提到面向对象,直至我们大二开始了“初学Java”这门课程的时候,我终于算是第一次真正接触到了面向对象,本来以为能真正揭开他神秘的面纱了,然而好景不长,真正到了讲面向对象的概念的时候,我却听的是懵懵懂懂!之后一直是这种状态,一学期下来,由于面向对象没搞明白,Java就学的跟没学过一样,简直失望透顶!!!
!!----------------->!!一直到,我遇到了python,这一门神奇的课程,还有一位,神奇的老师,两相组合之下,我第二次遇到的面向对象,之前的迷惑竟然直接迎刃而解。通过一天的学习之后,我就理解了面向对象的编程思想。想我大学学过了Java两年之后的对象恐惧症直接就解除了。这真的是让人感到意外的惊喜!!
重点来啦
下面就让我们来总结一下,什么是面向对象,什么又是类、对象,Python中的对象又怎么表示,他们的区别又是什么,以及怎么创建他们!!
一般情况下:
(1)对象
对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。
(2)对象的状态和行为
对象具有状态,一个对象用数据值来描述它的状态。
对象还有操作,用于改变对象的状态,"操作”就是对象的行为。
对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中
(3)类
具有相同或相似性质的对象的抽象就是类,类似于一系列事物的统称。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。例如说,“人”,这只是一个概念,而如果具体到某个人的名字的话,就是具体的 “对象”了。
类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性,其实也就是描述一下这个类或者这类东西都有什么特征。
类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。
(4)类的结构
在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般--具体结构关系,整体--部分结构关系。
①一般——具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。
②整体——部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。
(5)消息和方法
对象之间进行通信的结构叫做消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加以说明,参数可以是认识该消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。
类中操作的实现过程叫做方法,一个方法有方法名、参数、方法体。
再说Python中的面向 对象
表示:
python中,通过类和对象,以及对象之间的互相调用完成一定的功能,来体现面向对象的编程思想
怎么定义一个类?
a)类一般有几个组成部分:类型名称、属性、方法
b)通过class关键字,来定义一个自定义类型
c)通过__init__()函数,来初始化类的属性数据
d)通过普通函数,定义类的行为方法
2.怎么创建对象?
a)和执行函数一样,直接通过类的名称,来创建对象,如:u = Users()
3.创建的对象,怎么使用对象的属性?
a)对象的属性,可以直接通过对象的引用变量.属性名称来使用,如u.username
4.创建的对象,怎么使用对象的方法?
a)对象的方法,可以直接通过对象的引用变量.方法名称()来调用方法
5.创建对象的过程是什么?
a)首先,创建对象,会调用对象的__new__()函数,来申请内存,创建对象
b)其次,给创建好的独享,初始化对象的数据,自动调用__init__()函数,给对象的属性赋值
6.创建好的对象,赋值给了一个变量,变量是什么类型?存放的是什么数据?
a)变量=类名称()创建了一个对象,将对象的引用地址,赋值给了变量
b)变量(内存地址)à堆内存中的对象
c)type(变量)à类类型
网友评论