HashTable源码--put方法和get方法:
// 将key-value对添加到HashTable中,如果已存在,则新值替旧值,并返回旧值
public synchronized V put(K key, V value) {
// Hashtable中不能插入value为null的元素!
if (value == null) {
throw new Nu...
分类:
其他好文 时间:
2015-05-29 18:06:41
阅读次数:
129
java堆用于存放对象示例,与数据相关,java栈主要与线程的函数调用相关
函数调用一次出入java栈一次,调用的时候入栈,调用结束(return或者throw)出栈,函数参数和函数局部 变量保存在栈帧中,所以函数调用结束之后栈帧被弹出,相应的局部变量也就失效了。
函数参数和局部变量越多,需要栈帧中保存的局部变量表就越大,函数调用的层次就会越少。
局部变量是垃圾回收的很重要的根节点,任何被局部变量...
分类:
编程语言 时间:
2015-05-27 14:05:49
阅读次数:
184
我们要启动一个线程,就是调用一个线程实例的start方法。让我们来看看start方法的源码: 1 public synchronized void start() { 2 3 //0值就表示这个线程是新启动的 4 if(threadStatus!=0) { 5 throw new I...
分类:
编程语言 时间:
2015-05-26 10:33:22
阅读次数:
123
题目:给出一个数组A,找出一对 (i, j)使得A[i] find(const vector &A) 2. { 3. int n = A.size(); 4. if(n == 0) 5. throw new invalid_argum...
分类:
编程语言 时间:
2015-05-25 23:54:37
阅读次数:
245
Preconditions作为Guava中异常的前置检查,提供了一系列方法。从源码的实现中可以看出,所有的方法都满足以下形式(除format()方法以外)。if (!status) { throw new xxException();}例如:public static void checkAr...
分类:
其他好文 时间:
2015-05-25 11:27:24
阅读次数:
160
今天来__next__和send, 改天来throw和closeclass A: def __setattr__(self, key, val): print('set %s to %s'%(key, val)) self.__dict__[key] = valde...
分类:
编程语言 时间:
2015-05-24 01:19:33
阅读次数:
146
通常,我们使用try/catch/finally语句块来捕获异常,就像在这里说的。在抛出异常的时候,使用throw和throw ex有什么区别呢? 假设,按如下的方式调用几个方法: →在Main方法中调用Method1方法,try/catch捕获异常→在Method1方法中调用Method2方法,t...
异常:是对问题的描述,将问题进行对象封装,异常的体系:Throwable: 1.Error 2.Exception 1.RuntimeException异常体系的特点:异常体系中的所有类以及建立的对象都具备可抛性。可以被throw和throws关键字所操作,只有异常体系具备这个特点。thr...
分类:
编程语言 时间:
2015-05-21 23:56:49
阅读次数:
192
c++ 异常处理译自c++ complete refrence 3rd Chapter 38标准c++库定义了两个与异常相关的库,和。异常通常用来报告错误。定义了与异常处理相关的类,声明和函数。class exception {public:exception() throw();exception...
分类:
编程语言 时间:
2015-05-21 12:11:29
阅读次数:
142
我们到底该如何处理异常?原则:如果该功能内部可以将问题处理,用try,自己能解决就自己解决问题。如果处理不了,交由调用者处理,这是用throws,自己不能解决的问题,我们就抛出去交个调用者解决这个问题(当然最终还是交给JVM解决)区别:后续程序需要继续运行就try 后续程序不需要继续运行就throw...
分类:
移动开发 时间:
2015-05-21 10:28:08
阅读次数:
129