文档章节

Python天天练2--面向对象+异常

柳白子
 柳白子
发布于 2016/11/18 13:38
字数 681
阅读 22
收藏 0

   Python也是面向对象的语言,和所有面向对象的语言一样都有继承、封装、多态三大特征。这不禁让我想到了最近林丹出轨的事,都是一般的规律和惯性事件,感觉像是约定俗成习惯就好的事情了。

对象: 对象包括特性和方法。特性只是作为对象的一部分的变量,方法则是存储在对象内的函数。(绑定)方法和其他函数的区别在于方法总是将对象作为自己的第一个参数,这个参数一般成为self。

类:类代表对象的集合(或一类对象),每个对象(实例)都有一个类。类的主要任务是定义他的实例会用到的方法。

多态:多态是实现将不同类型和类的对象进行同样对待的特性——不需要知道对象属于哪个类就能调用方法。hon方面不一致
封装:   对象可以将它们的内部状态隐藏(或封装)起来。在一些语言中,这意味着对象的状态(特性)只对自己的方法可用。在Python中,所有的特性都是公开可用的,但是程序员应该在直接访问对象状态时谨慎行事,因为他们可能无意中使得这些特性在某些特性方面不一致。

继承:继承是另外一个懒惰的行为,一个类可以是一个或者多个类的子类。子类从超类继承所有方法。可以使用多个超类,这个特性可以用来组成功能的正交部分(没有任何联系)。普通的实现方式是使用核心的超类和一个或者多个混合的超类。

 

 

 

如果想要查看一个类是否是另一个类的子类,可以使用内建的issubclass函数

>>>issubclass(子类名,父类名)

True                                     //为真返回真,不是返回假

还可以使用isinstance方法检查一个对象是否是一个类的实例

如果想要知道已知类的基类(们),可以直接使用他的特殊特性__bases__

     如果要查看对象内所有储存的值,那么可以使用__dict__特性。如果真的想要找到对象是由什么组成的,可以看看inspect模块。

Python用异常对象来表示异常情况,遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止执行

 常见的异常:

 

 

 

 

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
柳白子
粉丝 7
博文 115
码字总数 135497
作品 0
成都
python异常处理和面向对象编程总结

异常处理和面向对象编程,是python编程中,比较重要的基础。在实际生产编程设计和开发中,异常处理和面向读象都是必须在设计和开发过程中充分考虑的。 对于python开发和面向对象这两部分基础...

yumushui991
06/26
0
0
你想要的Python面试都在这里了【315+道题】

写在前面 近日恰逢学生临近毕业,课程后期大家“期待+苦逼”的时刻莫过于每天早上内容回顾和面试题问答部分【临近毕业每天课前用40-60分钟对之前内容回顾、提问和补充,专挑班里不爱说话就的...

p柯西
06/12
0
0
Python基础面试题80问 Python自动化开发

为什么学习Python? 2. 通过什么途径学习的Python? 3. Python和Java、PHP、C、C#、C++等其他语言的对比? 4. 简述解释型和编译型编程语言? 5. Python解释器种类以及特点? 6. 位和字节的关...

zhouzhou2018
05/24
0
0
买《Python从小白到大牛》专题视频课程,送配套纸质图书

经过一年多时间的呕心沥血,Python立体化图书——《Python从小白到大牛》即将与大家见面了。所谓立体化图书包括:电子图书、视频、课件和服务等内容。 《Python从小白到大牛》纸质图书将于9...

tony关东升
07/23
0
0
云计算培训学院,云计算Python自动化运维开发实战

都忘记是什么时候知道python的了,我是搞linux运维的,早先只是知道搞运维必须会shell,要做一些运维自动化的工作,比如实现一些定时备份数据啊、批量执行某个操作啊、写写监控脚本什么的。后...

长沙千锋
05/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Spring Cloud Gateway真的有那么差吗?

前言 Spring Cloud从一开始最受大家质疑的就是网关性能,那是由于Spring Cloud最初选择了使用Netflix几年前开源的Zuul作为基础,而高性能版的Zuul 2在经过了多次跳票之后,对于Spring这样的整...

Java小铺
40分钟前
1
0
SpringBoot远程调试,远程debug你的线上项目

开发环境中代码出错了,可以利用IDE的debug功能来进行调试。那线上环境出错呢? 一、假设我们的项目是部署在tomcat中,那我们就需要对tomcat进行一定对配置,配置如下。 1. windows系统中,找...

nonnetta
45分钟前
0
0
JAVA秒杀优化方向

秒杀优化方向 将请求尽量拦截在系统上游:传统秒杀系统之所以挂,请求都压倒了后端数据层,数据读写锁冲突严重,几乎所有请求都超时,流量虽大,下单成功的有效流量甚小,我们可以通过限流、...

小贱是个程序员
53分钟前
0
0
C# 统计字符串中大写字母和小写字母的个数

static void Main() { int count1 = 0; int count2 = 0; Console.WriteLine("请输入字符串"); string str = Convert.ToString(Consol......

熊二的爸爸是谁
55分钟前
0
0
分布式服务框架之远程通讯技术及原理分析

在分布式服务框架中,一个最基础的问题就是远程服务是怎么通讯的,在Java领域中有很多可实现远程通讯的技术,例如:RMI、MINA、ESB、Burlap、Hessian、SOAP、EJB和JMS等,这些名词之间到底是...

老道士
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部