Stage4--Python面向对象
来源:互联网 发布:金润软件成都 编辑:程序博客网 时间:2024/04/30 09:52
说在前面: Stage1—Stage4简单介绍一下Python语法,Stage5开始用python实现一些实际应用,语法的东西到处可以查看到,学习一门程序语言的最终目的是应用,而不是学习语法,语法本事其实很简单,本系列希望通过一个个的实例来了解和学习Python。
理解面向对象编程
万事万物皆对象
我们从窗户向外望去:
每棵树:每一课树都可以看成一个对象。
路上每个人:每一个人也可以看成一个对象。
每个人上班的事件: 可以看成一个对象。
类和对象
类则是从某一部分对象中抽象出来的一个群体,这些群体具有某些共同的特征,我们可以根据我们所需的某几个特征抽象出我们自己想要的类。
每个人都是对象,我们可以抽象出来人的共同特征,就像我们给自然界的物质分类一样(如何分类?根据特征分类)。
每个人上班的事件是对象,我们可以抽象出来上班,上班和上课就是两个类。
创建Python中的类和对象
创建类
class Person: #特殊方法,构造函数,创建这个类的时候会首先调用 def __init__(self, name, age): self.name = name self.age = age #定义一个方法,显示人的信息 def displyPersonInfor(self): print("name:", self.name, ", age:", self.age)
创建对象(对象就是类的具体实例)
person = Person("xiaoming", 22)
访问属性及方法
person.displyPersonInfor() #访问类的成员方法print(person.name) #访问类的属性print(person.age)
python对象销毁(垃圾回收)
析构函数 del ,del在对象销毁的时候被调用,当对象不再被使用时,del方法运行:
class Person: #特殊方法,构造函数,创建这个类的时候会首先调用 def __init__(self, name, age): self.name = name self.age = age #定义一个方法,显示人的信息 def displyPersonInfor(self): print("name:", self.name, ", age:", self.age) #析构函数,对象销毁的时候调用 def __del__(self): print(self.__class__.__name__ + "销毁")xiaoming = Person("xiaoming", 22)xiaoming.displyPersonInfor() #访问类的成员方法xiaoqiang = Person("xiaoqiang", 25)xiaoqiang.displyPersonInfor()del xiaomingdel xiaoqiang
类的继承
面向对象的编程带来的主要好处之一是代码的重用,实现这种重用的方法之一是通过继承机制。继承完全可以理解成类之间的类型和子类型关系。
继承语法 class 派生类名(基类名)://… 基类名写作括号里,基本类是在类定义的时候,在元组之中指明的。
class Person: #特殊方法,构造函数,创建这个类的时候会首先调用 def __init__(self, name, age): self.name = name self.age = age #定义一个方法,显示人的信息 def displyPersonInfor(self): print("name:", self.name, ", age:", self.age) #析构函数,对象销毁的时候调用 def __del__(self): print(self.__class__.__name__ + "销毁")class Student: def __init__(self, name, age, grade): Person.__init__(self, name, age) self.grade = grade def displyPersonInfor(self): print("i am a student, my name is " + self.name) def __del__(self): print("student析构函数调用")xiaoming = Person("xiaoming", 22)xiaoming.displyPersonInfor() #访问类的成员方法xiaoqiang = Student("xiaoqiang", 25, 3)xiaoqiang.displyPersonInfor()del xiaomingdel xiaoqiang
1 0
- Stage4--Python面向对象
- python 面向对象
- python面向对象初步
- python面向对象
- Python面向对象详解
- python面向对象编程
- python面向对象
- python 面向对象
- python 面向对象编程
- python面向对象编程
- python面向对象编程
- python 面向对象笔记
- Python 面向对象编程
- Python面向对象编程
- python面向对象1
- Python面向对象详解
- Python 面向对象编程
- python面向对象1
- 从web专业角度谈谈如何对screen设备宽度断点
- js注意事项03
- 解决 source insight 代码关联问题
- 第三天 原串翻转
- 某公司泄露版IDA pro6.8去除局域网检测
- Stage4--Python面向对象
- HDU_多重背包系列
- POJ 2774 Long Long Message (后缀数组求最长公共子串)
- Key Set<hdoj5363>
- js中数组的用法
- 对如何入门Android的一些建议
- JSP技术(一)
- Brupsuite暴力破解DVWA渗透平台
- 快速幂模板<n的m次方对mod取余>