当前位置: 移动技术网 > IT编程>脚本编程>Python > Python面向对象类的代码实例

Python面向对象类的代码实例

2018年02月03日  | 移动技术网IT编程  | 我要评论

灵图天行者,透光率计,李白的古诗大全

面向对象

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

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网