Python面向对象类的代码实例
程序员文章站
2022-04-12 21:47:26
面向对象
1.类
#Filename:PyClass.py
class Animal:
count = 0 #类成员,所有对象共享
__private...
面向对象
1.类
#Filename:PyClass.py class Animal: count = 0 #类成员,所有对象共享 __privateVal = 2 #双下划线代表私有变量,只能在内部函数中调用 def __init__(self,name): #构造函数,self默认加上否则函数中无法调用自己 self.name = name #name是创建的对象变量,由该对象独享 Animal.count +=1 #调用类成员变量必须要有类名 def __del__(self): #析构函数,何时执行很不确定,可以在外部手动调用 print('%s bye'%self.name) Animal.count -=1 def CheckCount(self): print('left:',Animal.count) def ShowPrivate(): print('private:',Animal.__privateVal) #调用类私有变量 def __PrivateFunc(): #私有函数 print('I am private') dog = Animal('dog') if True: cat = Animal('cat') #域内创建对象,出域并不一定会调用__del__ cat.__del__() #可以手动调用析构__del__ dog.CheckCount() print('animal:',Animal.count) #print('animal:',Animal.__privateVal) #这一步会出错,外部无法调用私有成员变量 Animal.ShowPrivate() #Animal.__PrivateFunc() #这一步会出错,外部无法调用私有成员函数
2.继承
#Filename:inherit.py class parent1: def __init__(self,name): self.name = name class parent2: def __init__(self,age): self.age = age class child(parent1,parent2): #继承的方式 多重继承 def __init__(self,name,age): #初始化父类方式 parent1.__init__(self,name) parent2.__init__(self,age) def ShowName(self): print('name',self.name) #继承自父类1的成员变量 def ShowAge(self): print('age',self.age) #继承自父类2的成员变量 ch = child('dv',3) ch.ShowName() ch.ShowAge()
上一篇: MySQL中的锁(表锁、行锁)详细讲解
下一篇: 企业网越发不安全?