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()