从java5开始,java提供了Callable接口,Callable接口提供了一个call方法可以作为线程的执行体,但call方法比run方法功能更加强大。主要体现在:
1.call方法可以有返回值;
2.call方法可以声明抛出异常。
因此我们完全可以提供一个Callable对象作为Thread的target,而该线程的线程执行体就是该Callable对象的call方法,问题...
分类:
其他好文 时间:
2014-08-28 18:12:45
阅读次数:
498
panic 抛出异常 recover 捕获异常 捕获后会返回外层函数继续执行 defer 函数退出之前执行 func panicOut() { print(5) panic("error") print(6) } func recoverHere() { print(3) defer func(){ err := recover(...
分类:
编程语言 时间:
2014-08-28 16:23:10
阅读次数:
208
[csharp]view plaincopy//相较上一版本改进//1.修改Bug//当设置每月一次频率时,设置的Day日期如果为31,30,29,在有些年份的有些月份会抛出异常,因为有些月份是没有31天的,改正之后,//如果设置了31天,则只有有31天的月份会执行。//2.修正一年中某天的日期较验...
分类:
其他好文 时间:
2014-08-28 09:35:39
阅读次数:
322
//新版本,可以再globa.ascx里面设置开发模式//以便于调试错误//表单转实体对象V2版public class HttpRequestHelper { /// /// 开发模式,设置成开发模式后抛出异常,可查看出错的属性,和类型 /// ...
分类:
Web程序 时间:
2014-08-27 20:16:38
阅读次数:
345
当我们的Lua程序遇到有需要保护的代码或者方法时(即使程序异常,也只是抛出异常信息,而不是让程序崩溃),Lua为我们提供了两种解决的办法,这两种方法可以让我们捕获异常,因此封装自己的tryCatch函数。
1.pcall调用
2.xpcall调用
相同点:
当程序正常时,返回true,被执行函数的返回值
不同点:
1.参数不同
pcall(fun) ,参数只有一个被调用函数
xpcall(fun,errHandleFun),参数是被调用函数,错误函数处理
2.执...
分类:
其他好文 时间:
2014-08-26 17:30:06
阅读次数:
371
前言
今天给自己订的任务是将《Effective C++》第二章看完,一口气看下来发现量并不大,这一章剩下的内容都较为简短,来看看今天的条款吧。
条款08:别让异常逃离析构函数
如同条款的字面意思,不要让析构函数中抛出异常,这样会使程序出现不明确行为。
举个例子:有一个Widget的自定义类的vector。
vector v;
当它在呗销毁的时候,它需要销毁掉里面含有的所有Widget,如果里面有10个Widget,在析构第一个元素期间,有个异常抛出,其它九个依旧得销毁,而不是跳过。
...
分类:
编程语言 时间:
2014-08-26 15:28:46
阅读次数:
212
1.LocaActivityManageram=newLocalActivityManager(Context,true);2.Windowwindow=am.startActivity("tag",newIntent());3.Viewview=window.getDecorView();接下来一定要在3个生命周期函数里调用如下方法,否则会抛出异常:java.lang.IllegalStateException:Activitiescan‘tbea..
分类:
其他好文 时间:
2014-08-26 03:10:15
阅读次数:
231
ErrorCode.java 简单测试代码,具体应用思路:手动抛出异常信息,在事务中根据错误码来回滚事务的思路。public enum ErrorCode { //系统级 SUCCESS("000000","success"), SYS_ERROR("999999","系统异常"...
分类:
其他好文 时间:
2014-08-25 19:11:24
阅读次数:
198
8.4 Exceptions 异常 用异常通知程序的其他部分,发生了不可忽略的错误 只在真正例外的情况下才抛出异常 不能用异常来推卸责任 避免在构造函数和析构函数中抛出异常,除非你在同一地方把它们捕获 在恰当的抽象层次抛出异常 在异常消息中加入关于导致异常发生的全部信息 避免使用...
分类:
其他好文 时间:
2014-08-21 13:07:34
阅读次数:
224
1. 指定异常T funNname( parameterlist )throw( T1, T2,····,Tn);其中T是类型,parameterlist是参数列表, 而类型T1, T2,····,Tn是函数会抛出的异常。2. 不抛出异常T funNname( parameterlist )th.....
分类:
编程语言 时间:
2014-08-20 22:18:22
阅读次数:
228