调用可能抛出异常的函数

(1)java看是否是受检异常,如果是必须try catch, 如果是非受检异常,则不用 try catch

void test()throws MyException;

(2)c++不必try catch,不会编译错误:

void fun (); // 能抛出任何类型的异常

void fun () throw(except1,except2,except3)

// 后面括号里面是一个异常参数表,本例中只能抛出这3中异常

void fun () throw()   // 参数表为空,不能抛出异常,如果抛出异常,编译没有问题,但是运行时try...catch(...)也捕获不了,直接abort

问题b:假设fun()中抛出了一个不在“异常参数表”中的异常,会怎么样?

答:调用set_terminate()中设定的终止函数。然而,这只是表面现象,实际上是调用默认的unexpected()函数,然而这个默认的unexpected()调用了set_terminate()中设定的终止函数。可以用set_unexpected()来设置unexpected,就像set_terminate()一样的用法,但是在设定了新的“unexpected()”之后,就不会再调用set_terminater中设定的终止函数了。

#include

class Exception{};

using namespace std;

void test(){

cout<

throw 1;  //如果是throw:则捕获不了,如果是1可以捕获

}

int main(){

try{

try{

test();

}catch(...){

cout<

throw;

}

}catch(...){

cout<

}

}

重新抛出是采用不带运算对象的throw表示,但是如果重新抛出,又没有异常可以重新抛出,就会调用terminate();

java 调用一个抛出异常的函数,Java VS C++(14) 调用可能抛出异常的函数相关推荐

  1. 计算机毕业设计中用Java编写一个订餐系统(JAVA SWING)

    一. 开发技术 JDK:JDK1.8,JDK是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+J ...

  2. JAVA鸡汤------一个牛人给java初学者的建议

    给初学者之一:浅谈java及应用 学java不知不觉也已经三年了 从不知java为何物到现在一个小小的j2ee项目经理 虽说不上此道高手,大概也算有点斤两了吧 每次上网,泡bbs逛论坛,没少去java ...

  3. java写一个搜索引擎_搜索引擎—-Java实现一个简单的网络爬虫

    Java实现一个简单的爬虫程序. package SearchCrawler;import java.util.*;import java.net.*;import java.io.*;import ...

  4. 用java写一个日历_使用JAVA写一个简单的日历

    JAVA写一个简单的日历 import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDa ...

  5. java输入一个字符串_在java中如何用键盘输入一个数,字符,字符串

    一,利用 Scanner 实现从键盘读入integer或float 型数据 1 import java.util.*;2 public classtest {3 public static voidm ...

  6. 用java设计一个动物声音 模拟器,Java语言 设计一个动物声音“模拟器”(用接口实现)...

    设计一个动物声音"模拟器",希望模拟器可以模拟许多动物的叫声,要求如下. 编写接口Animal Animal接口有两个抽象方法cry()和getAnimalName(),即要求实现 ...

  7. java做一个日历程序_2016-0616 JAVA实现的一个日历

    简介:利用JAVA技术实现的一个简单的日历. 1.RL类(日历类) package Class; import java.util.Calendar; import java.util.Date; i ...

  8. 用java编写一个计算器_用java程序编写一个计算器

    展开全部 给你一个参考,希望不62616964757a686964616fe58685e5aeb931333330343261要被百度吞了当晚餐 import java.awt.BorderLayou ...

  9. java 从一个容器获取对象,Java 如何实现从spring容器中获取注入的bean对象

    Java 如何实现从spring容器中获取注入的bean对象 发布时间:2020-11-03 15:27:37 来源:亿速云 阅读:70 作者:Leah 这期内容当中小编将会给大家带来有关Java 如 ...

  10. java做一个mud_菜鸟学Java(十二)——搭建一个完整的Java开发环境

    作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,eclipse(或者myeclipse ...

最新文章

  1. #x开头的是什么编码呢。浏览器可以解释它。如中国等同与中文中国?
  2. iOS开发之邮件发送代码
  3. Integer’s Power HDU - 3208(容斥原理)
  4. PKG_CONFIG_PATH错误提示解决办法
  5. Spring Boot Admin的使用
  6. django models 文件夹
  7. leetcode:Majority Number
  8. 设计模式-责任链模式(17)
  9. mysql错误诊断_MySQL Server无法启动错误诊断一则
  10. [转载] Python 3.x | 史上最详解的 导入(import)
  11. 读书感悟之,从术到道
  12. 网络安全|墨者学院在线靶场|投票系统程序设计缺陷分析
  13. vs2015编译纯ASM文件
  14. 360商城页面练习(html+css+js)
  15. 自己收藏的两款夹娃娃PHP源码
  16. PUBGlite下载安装以及加速器详解
  17. [渝粤教育] 上海交通大学 流体力学 参考 资料
  18. dvi转vga接口图及相关接法
  19. macOS:M1 上安装 Rosetta 2
  20. asp.net大学生学科竞赛报名及管理系统

热门文章

  1. [安卓基础] 008.Android中的显示单位
  2. Qt中标准对话框实例,QObject::tr()的作用
  3. sqlite3数据库最大可以是多大?可以存放多少数据?读写性能怎么样?详述
  4. 关于opencv中Mat赋值(浅拷贝,深拷贝)原理
  5. C#增删改查操作Access数据库之二(数据库的增加)
  6. Thread.interrupt()方法理解
  7. 计算机信息安全专业欧洲排名,美国大学信息安全专业排名TOP10一览 加州大学伯克利分校居首...
  8. 验证手机号码归属地_手机号码归属地能否取消? 工信部回复了
  9. java集合刷新面板_java Swing 中 面板刷新的问题。。求指教 。 高手在哪里啊。。。...
  10. Error:Internal error: org.gradle.tooling.BuildException: Could not run build action using Gradle dis