# 需求:类创建人的对象:初始化年龄0,让用户输入自己的年龄:1-100合法 小于1或大于100 抛出异常# 自定义异常 -- 自定义异常类 也要继承exception
class AgeError(Exception):def __init__(self):self.error_msg = 'AgeError: 年龄应该是在1-100之间!'def __str__(self):return self.error_msgclass Person(object):def __init__(self):self.__age = 0def get_age(self):return self.__agedef set_age(self, num):if num < 1 or num > 100:# print('年龄不合法')# 显示异常信息,抛出异常 -- raise  异常类型的名字raise AgeErrorself.__age = numwangfan = Person()
print(wangfan.get_age())
# wangfan.set_age(-100)  # 解释器报错,影响程序的运行
try:wangfan.set_age(-100)
except AgeError:print(AgeError())

  

-------  知识无价,汗水有情,如需搬运请注明出处,谢谢!

自定义异常并抛出,捕获相关推荐

  1. cocos2d-x 错误异常抛出捕获和崩溃拦截

    Error对象 一旦代码解析或运行时发生错误,JavaScript引擎就会自动产生并抛出一个Error对象的实例,然后整个程序就中断在发生错误的地方. Error对象的实例有三个最基本的属性: nam ...

  2. Python程序异常处理:try、except、else、finally,捕获指定异常类型、捕获多个异常类型、捕获所有异常类型、捕获异常信息、异常的传递、raise抛出自定义异常

    输入与预期不匹配,触发异常,程序退出: 一.异常处理:使用try.except进行错误处理 为了保证程序运行的稳定性,错误应该被程序捕捉并合理控制 Python使用保留字try和except进行异常处 ...

  3. 【C++ 语言】异常 ( 抛出字符串异常 | 抛出异常对象 | 抛出任意对象 | 抛出自定义异常 )

    文章目录 I 异常处理 II 字符串异常 III 异常对象 IV 抛出任意类型对象 V 自定义异常 VI 异常相关代码 I 异常处理 1. 异常处理 : 使用 " try{}catch(){ ...

  4. 【C++ 语言】异常 ( 抛出字符串异常 | 抛出异常对象 | 抛出任意对象 | 抛出自定义异常 )

    转载自:https://blog.csdn.net/shulianghan/article/details/100002073 文章目录 I 异常处理 II 字符串异常 III 异常对象 IV 抛出任 ...

  5. 在不丢失堆栈跟踪的情况下重新抛出Java中的异常

    在C#中,我可以使用throw; 保留堆栈跟踪时重新抛出异常的语句: try {... } catch (Exception e) {if (e is FooException)throw; } Ja ...

  6. controller的异常处理以及service层的事务控制___controller层 trycatch不影响service层抛出的异常

    controller的异常处理以及service层的事务控制 最近写代码涉及到一些事务,上午终于把代码给理顺了,之前不太清楚在哪里做异常处理,导致代码遍地try-catch,相当难看. 还是基于con ...

  7. 异常全家桶来咯,异常捕获,异常抛出,自定义异常

    1.捕获异常: 在Java中,凡是可能抛出异常的语句,都可以用try...catch捕获.把可能发生异常的语句放在try{...}中,然后使用catch捕获对应的Exception及其子类. 1.多c ...

  8. 添加引用方式抛出和捕获干净的WebService异常

    转载:http://www.cnblogs.com/ahdung/p/3953431.html 说明:[干净]指的是客户端在捕获WebService(下称WS)抛出的异常时,得到的ex.Message ...

  9. java 自定义异常 未回滚_抛出自定义异常,spring AOP事务不回滚的解决方案

    spring AOP 默认对RuntimeException()异常或是其子类进行事务回滚,也就是说 事务回滚:throw new RuntimeException("xxxxxxxxxxx ...

最新文章

  1. 彻底解决tensorflow:ImportError: Could not find 'cudart64_90.dll' tensorflow安装
  2. Vue中使用form表单提交刷新问题
  3. android中使用jni对字符串加解密实现分析
  4. (转)FTP的PORT(主动模式)和PASV(被动模式)
  5. 掌握jQuery插件开发,这篇文章就够了
  6. 使用Spring Boot和Logback登录到Redis
  7. mysql死锁的排查方法_MySQL死锁系列-线上死锁问题排查思路
  8. CS106A编程方法学二
  9. 2020 年 AIoT 产业概述
  10. 计算机二级经济订货批量公式,计算机二级考试真题-Excel-李晓玲-采购成本分析...
  11. 深度学习中如何选择一款合适的GPU卡的一些经验和建议分享
  12. linux系统下使用润乾报表设计器
  13. sudo报错及在linux上启动jar包时报错java.net.UnknownHostException
  14. 2022年工具钳工(技师)最新解析及工具钳工(技师)试题及解析
  15. 如何增长U盘的寿命- 小技巧
  16. 后端面经(已收到腾讯实习offer)
  17. 使用lgb.cv时出现ValueError: Supported target types are: (‘binary‘, ‘multiclass‘). Got ‘continuous‘ instea
  18. 浏览器兼容性和HTTP状态了解
  19. 关于 K8s 集群中证书期限确认及续约的一些笔记
  20. 根据实测高程值校正DSM高程

热门文章

  1. java实现for文件删除_Java 添加、删除、替换、格式化Word中的文本的步骤详解(基于Spire.Cloud.SDK for Java)...
  2. python数值运算操作符也叫做内置操作符_Python的操作符 - osc_r1gtal48的个人空间 - OSCHINA - 中文开源技术交流社区...
  3. 使用nvl就不能groupby了吗_现在的手机大部分都不能换电池,使用1至2年就需要更换吗?...
  4. Spring+MyBatis多数据源配置实现
  5. debian6 snmpd 安装配置
  6. 一个设置容器和网格布局的小技巧
  7. 科技也能这么酷:无人驾驶轮椅要来啦
  8. Spring实战——无需一行xml配置实现自动化注入
  9. 10月份出版图书《玩转虚拟机基于VMware+Windows》
  10. php在客户端禁用cookie时让session不失效的解决方法