Python 初体验 之 面向对象

来源:互联网 发布:科比三连冠时期数据 编辑:程序博客网 时间:2024/05/16 09:48

谈起面向对象,对于大部分程序员来说都是耳熟能详的玩意,这个面向对象编程说白了无非就是类和对象,方法和

成员变量,封装等等。Python作为一门面向对象的语言,肯定对于这些的支持是没问题,下面我们来说一下Python的面

向对象编程的问题。首先是Python的声明一个类然后创建一个对象,这个是最基本的玩意。代码如下

'''Created on 2013-1-25@author: Administrator'''class Person:    def __init__(self,name):#相当于构造函数        print("构造函数启动")        self.name=name    def sayHi(self):        print("Hello World",self.name)        p = Person("rookie")p.sayHi()
可以看到,其实声明一个类非常的简单,就是使用class关键字,然后对于这个init函数,其实就是相当于构造函数,

这个self指针是必须的,不管你的函数是否有参数,这个self都是必不可少的一个参数,主要原因是Python是一门动态

语言,支持类型的转变,所以必须知道自己的对象指向的类是谁,所以需要这个指针。下面我们再来说一下这个对象

的变量和函数的问题吧

'''Created on 2013-1-25@author: Administrator'''class Person:    population=0        def __init__(self,name):        print("Person类正在实例化")        self.name=name        print("类名为",self.name)        self.population += 1        def __del__(self):#相当于C++里面的析构函数        print("Person类正在析构",self.name)        self.population -= 1                if self.population == 0:            print("I am the last One")        else:            print("There are still",self.population,"left")                def sayHi(self):        print("Hello World",self.name)            def howMany(self):        print("We have,",self.population,"Person Now")swaroop = Person("swaroop")swaroop.sayHi()swaroop.howMany()kalam = Person("kalam")kalam.sayHi()kalam.howMany()swaroop.sayHi()    

可以看到,声明成员函数和声明一个函数是一样的,而声明一个变量就是直接写上这个就行,更是无比的简单,下面

我们再来说一下这个继承的问题,先看一个简单的例子

'''Created on 2013-1-25@author: Administrator'''class SchoolMember:    def __init__(self,name,age):        self.name=name        self.age=age        print(self.name,"正在实例化")            def tell(self):        print("Name is",self.name,"and Age is",self.age)        class Teacher(SchoolMember):    def __init__(self,name,age,salary):        SchoolMember.__init__(self, name, age)        self.salary=salary        print("教师类正在实例化")            def tell(self):        SchoolMember.tell(self)        print("工资为",self.salary)t = Teacher("A",12,300)t.tell()

这个继承主要就是在声明类的时候给一个元组就行,这貌似说明Python支持多重继承,呵呵。还有就是Python不能自

己主动的去调用父类的构造函数,必须是你自己去老实的调用父类的构造函数,然后对于这个父类的变量或者什么函

数的都可以直接使用父类的函数名或者变量名就可以直接调用了

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 户口在南方人才市场怎么办签证 报警电话接到说方言的怎么办 学生去新加坡旅游签证怎么办 出入境的受理编号不见了怎么办 职工下岗档案单位丢失怎么办退休 大学毕业档案在自己手里怎么办 青岛李沧区房产证加名字怎么办手续 公积金迟交了1天怎么办 科一预约不上怎么办 科目一考试没去怎么办 科目一成绩单丢了怎么办 考科目二身份证丢了怎么办 考科目三身份证丢了怎么办 考科目一身份证丢了怎么办 滴滴顺风车被永久封禁怎么办 三岁宝宝智力发育迟缓怎么办 学车体检听力没过怎么办 学车体检听力不过关怎么办 离职体检发现听力有问题怎么办 买的二手房土地证没过户怎么办 b2扣了9分怎么办 上海网约车车证怎么办 b2驾照累计12分怎么办 c1本扣满12分怎么办 太原公共自行车丢了怎么办 在太原出租车丢了东西怎么办 太原社保卡丢了怎么办 太原铁路医保卡丢了怎么办 学车体检视力不合格怎么办 换驾照色弱被拒怎么办 在上海考驾照贵怎么办 驾驶证有效期过了半年怎么办 资格证脱审2年了怎么办 换驾驶证时眼睛近视了怎么办 违章累计扣12分怎么办 一个违章扣12分怎么办 a1驾照扣3分怎么办 a1驾照扣12分怎么办 吃了毓婷哺乳了怎么办 吃了毓婷后出血怎么办 吃金毓婷喝了水怎么办