什么情况下会用到try-catch
来源:互联网 发布:数据库查询去除重复 编辑:程序博客网 时间:2024/05/02 22:35
面试官:什么情况下用到try-catch?
程序员:代码执行预料不到的情况,我会使用try-catch。
面试官:什么是预料不到的情况呢?
程序员:比如我要计算a除以b,但是b是变量,如果b等于0程序就会出错,所以我会将程序代码放在try中。
面试官:还有其他情况会遇到try-catch吗?
程序员:我会在上传文件时使用try-catch,之前做过一个网站有上传文件的功能,线下测试的时候没有问题,但是那个线上环境是一个仅有100M的虚拟空间,除了代码剩余的空间所剩无几,所以网站上线后没过多长时间上传文件就在catch中报错,空间不足。
面试官:还有其他场景会用到try-catch吗?
程序员:我还会在使用数据库事务的时候使用try-catch,如果事务执行成功就提交事务,如果事务执行失败就由catch提示错误并回滚事务。还有就是在使用curl方式访问其他网络地址的时候会用到,如果网络访问出错或者网络访问超时就在catch中抛出错误。还有就是之前写winfrom软件的时候调用摄像头和打印机,会使用try-catch。
面试官:那我可否归纳为当程序需要打开一个资源,使用完后需要关闭的情况下,需要使用try-catch。就想你上面说到的文件上传写入,数据库事务的提交,还有摄像头和打印机的使用,都是这种情况。
除了上面所说的情况,你还有其他场景会用到try-catch吗?
程序员:还有就是我的程序调用其他人写的程序接口的时候,我不敢保证别人的接口返回的都是约定好的返回值。所以如果接口返回约定好的返回值,那么try中的程序正常执行,如果意料之外catch抛出错误。
程序员:代码执行预料不到的情况,我会使用try-catch。
面试官:什么是预料不到的情况呢?
程序员:比如我要计算a除以b,但是b是变量,如果b等于0程序就会出错,所以我会将程序代码放在try中。
面试官:还有其他情况会遇到try-catch吗?
程序员:我会在上传文件时使用try-catch,之前做过一个网站有上传文件的功能,线下测试的时候没有问题,但是那个线上环境是一个仅有100M的虚拟空间,除了代码剩余的空间所剩无几,所以网站上线后没过多长时间上传文件就在catch中报错,空间不足。
面试官:还有其他场景会用到try-catch吗?
程序员:我还会在使用数据库事务的时候使用try-catch,如果事务执行成功就提交事务,如果事务执行失败就由catch提示错误并回滚事务。还有就是在使用curl方式访问其他网络地址的时候会用到,如果网络访问出错或者网络访问超时就在catch中抛出错误。还有就是之前写winfrom软件的时候调用摄像头和打印机,会使用try-catch。
面试官:那我可否归纳为当程序需要打开一个资源,使用完后需要关闭的情况下,需要使用try-catch。就想你上面说到的文件上传写入,数据库事务的提交,还有摄像头和打印机的使用,都是这种情况。
除了上面所说的情况,你还有其他场景会用到try-catch吗?
程序员:还有就是我的程序调用其他人写的程序接口的时候,我不敢保证别人的接口返回的都是约定好的返回值。所以如果接口返回约定好的返回值,那么try中的程序正常执行,如果意料之外catch抛出错误。
阅读全文
0 0
- 什么情况下会用到try-catch
- try,catch,finally分别在什么情况下使用
- 什么情况下只写try和finally语句而不用写catch 语句呢?
- 什么情况下只写try和finally语句而不用写catch 语句呢?
- 什么情况下会用到虚方法(虚函数)?它与接口有什么不同?
- 您在什么情况下会用到虚方法?它与接口有什么不同?
- 黑马程序员----throw和throws有什么区别? try、catch、finally分别在什么情况下使用?
- 什么情况下会失眠
- 在什么情况下会用到虚方法(虚函数)?它与接口有什么不同?
- 在什么情况下会用到虚方法(虚函数)?它与接口有什么不同?
- try、catch、finally各种情况下的运行流程
- 各种return情况下try,catch,finally的执行顺序
- try catch finally 几种情况下的执行结果。
- 有Return情况下的try catch finally执行顺序
- 在什么情况下会用到虚方法(虚函数)?它与抽像函数区别等探讨
- 虚函数什么情况下会内联
- 什么情况下会返回NodeList对象
- 虚函数什么情况下会内联
- 利用unity + visual studio 自制一款小游戏
- String s=new String("xyz")及String s="a"+"b"+"c"+"d";创建几个String对象的问题
- 欢迎使用CSDN-markdown编辑器
- apache 服务
- Dijkstra算法 Atcoder-070-D
- 什么情况下会用到try-catch
- Android异步消息处理机制
- CF Round #428( Div.2)BCDE
- 基于大神张林峰指导 自编 Git 开发流程2.0
- mysql开启慢查询
- Ext JS 类系统简介
- ES6多重箭头函数
- 初识nodejs17
- codeforces 839 B Game of the Rows