贵州省城乡和住房建设厅官方网站,广州 网站开发 公司,大理建设学校官方网站,动态购物网站开发源代码面向对象变成介绍面向过程编程核心是过程(流水线式思维)#xff0c;过程即解决问题的步骤#xff0c;面向过程的设计就好比精心设计好一条流水线#xff0c;考虑周全什么时候处理什么东西。主要应用在一旦完成很少修改的地方#xff0c;如linux内核、git、apache服务器等优…面向对象变成介绍面向过程编程核心是过程(流水线式思维)过程即解决问题的步骤面向过程的设计就好比精心设计好一条流水线考虑周全什么时候处理什么东西。主要应用在一旦完成很少修改的地方如linux内核、git、apache服务器等优点极大的降低了程序的设计复杂度缺点可扩展性差改动一个地方很可能要改多个地方牵一发而动全身面向对象编程不是编程的全部只是用来解决软件可扩展性的核心是对象(上帝式思维)对象作为程序的基本单元一个对象包含了数据和操作数据的函数。面向对象就是把计算机程序作为一个对象集合每隔对象都能接收其他对象传来的消息计算机程序的执行就是就是一系列消息在各个对象之间传递。主要应用在需求经常变化的软件一般需求的变化都集中在用户层互联网应用企业内部软件游戏等优点解决了程序的可扩展性差的问题对某一个对象修改会立刻反映到整个程序体系缺点可控性差无法预测程序执行结果类和对象对象的概念对象也叫做实例是通过类产生的对象就是数据属性和方法属性的结合体比如lol中的英雄一个英雄就是一个对象具备生命值、蓝条攻击力等数据属性又具备qwer四个技能属于方法属性。类的概念类包含了一组对象的相同属性部分比如游戏人物所有的人物都有名字、标签(坦克战士法师)、生命值、蓝条攻击力等虽然具体的值不同但是都可以包含在类中去生成。在python中用变量表示是数据属性用函数表示方法属性。在现实生活中先有对象后有类比如先有的人后有的人类的概念而在编程中是先有的类后有的对象类生成对象。声明一个类和函数的定义类似定义函数通过def关键字定义类通过class关键字class 类名:数据属性方法属性classStyle:passclassChinese:countrychina #数据属性def __init__(self,name,color,age): #init函数一定不能有返回值只能初始化if notisinstance(name,str):raiseTypeErrorself.namename #p1.namexiaobaiself.colorcolor #p1.coloryellowself.ageage #p1.age22def talk(self): #函数属性print(%s is talking%self.name)defeat(self):print(is eating)deflaugh(self):print(is laughing)#实例化__init__(p1,name,color,age)p1Chinese(xiaobai,yellow,22)p2Chinese(xiaohei,yellow,25)print(Chinese.__dict__)#使用__dict__查看Chinese类下的属性print(p1.__dict__)#使用__dict__查看Chinese对象实例化p1下的属性p1.talk()print(Chinese.country,id(Chinese.country))print(p1.country,id(p1.country))执行结果{__module__: __main__, country: china, __init__: , talk: , eat: , laugh: , __dict__: , __weakref__: , __doc__: None} #Chinese.__dict__{name: xiaobai, color: yellow, age: 22} #p1.__dict__xiaobai is talking #p1.talk()china 2906932484504 #print(Chinese.country,id(Chinese.country))china 2906932484504 #print(p1.country,id(p1.country))从执行结果中可以看出类有数据属性和函数属性对象只有数据属性。对象有着类所没有的数据属性并且对象有着类中共同的数据属性和函数属性。