Python_62面向对象

1、C#、 JAVA :只能面向对象编程

2、Python、 Ruby:函数编程+面向对象

3、从上而下写代码 属于面向过程编程    

4、def  写函数  ;  class  写类 类里的函数叫方法  多一个 self 参数

class ddddd:

    def fangfa1(self,backup):

         pass

     def fangfa2(self,backup,record):

         pass

 

使用的时候要先定义一个对象

ff=ddddd()

ff.fangfa1('ddfff')

ff.fangfa2('ddfff',xxxx)

类将函数进行了封装

面向对象不是所有的对象都适用

面向对象过程   定义类  根据类创建对象   适用对象使用类中的方法

******************************************************************************************************************************************************************************************************************************************************

class ddd:
def d1(self,names):
print (names,self)
def d2(self):
print (self)
dm=ddd()
print (dm)
dm.d1('wangzzdd')
dm.d2()
输出——————————————————————————————————————————————————————————————————————————————————————————————————————————————

  <__main__.ddd object at 0x0000000001DFA3C8>
   wangzzdd <__main__.ddd object at 0x0000000001DFA3C8>
   <__main__.ddd object at 0x0000000001DFA3C8>

 ******************************************************************************************************************************************************************************************************************************************************

封装变量
class ddd:
def d1(self):
print (self.names)
def d2(self,name1):
print (self)
def d3(self,name2):
print (self)
dm=ddd()
dm.names='ffgghhh'
print (dm)
dm.d1()
# dm.d1('wangzzdd')
#dm.d2()
dm1=ddd()
dm1.names='fdffttttt'
dm1.d1()
输出——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

<__main__.ddd object at 0x0000000002889940>
ffgghhh
fdffttttt

*****************************************************************************************************************************************************************************************************************************************************

初始化类时  dd=classname()  默认会执行 classname类的 ——init_()方法

当同一类型的方法具有相同的参数时通过封装可以减少工作重复率

把类当做模板,创建多个对象

 

class Person:
def __init__(self,name,age,weight):
self.Name=name
self.Age=age
self.Weight=weight
def chi(self):
print ("%s 吃" % self.Name)
self.Weight=self.Weight+2
def jianshen(self):
self.Weight=self.Weight-1


o1=Person('小明',5,100)
o2=Person('小明2',5,70)
o3=Person('小明3',5,65)
o1.chi()


posted on 2018-05-18 13:49  JuGooLar  阅读(123)  评论(0编辑  收藏  举报

导航