Collection 是 java.util 下的接口,它是各种集合的父接口,继承于它的
接口主要有 Set 和 List;Collections 是个 java.util 下的类,是针对集合的
帮助类,提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作...
分类:
其他好文 时间:
2015-06-09 17:31:04
阅读次数:
143
二者都实现了 Map 接口,是将惟一键映射到特定的值上;主要区别在于:
1)HashMap 没有排序,允许一个 null 键和多个 null 值,而 Hashtable 不允许;
当get()方法返回null值时,既可以表示HashMap中没有改键,也可以表示改建所对应的值为null。一次hasomap中不能由get()方法来判断hashmap对象中是否存在某个键,应该是哟好难过conta...
分类:
其他好文 时间:
2015-06-09 17:28:17
阅读次数:
142
用 synchronized 关键字修饰同步方法;
反对使用 stop(),是因为它不安全。它会解除由线程获取的所有锁定,而
且如果对象处于一种不连贯状态,那么其他线程能在那种状态下检查和修改它
们。结果很难检查出真正的问题所在;
suspend()方法容易发生死锁。调用 suspend()的时候,目标线程会停下来,
但却仍然持有在这之前获得的锁定。此时,其他任何线程都不能访问锁定的资源...
分类:
编程语言 时间:
2015-06-09 17:27:00
阅读次数:
311
1.final
final修饰类,说明这个类不能被继承,是个顶级类。
final修饰变量,说明这个变量是常量,初始化后不能再改。
fianl修饰方法,表示这个方法不能被重写,不过可以重载final修饰的方法。(常见的final方法是object类中的wait(),notify()方法)
2.finally
finally是关键字,在异常处理中,try字句中执行需要运行的内容,ca...
分类:
其他好文 时间:
2015-06-08 23:32:36
阅读次数:
499
一般来说,内存泄漏有两种情况,一种情况如在C/C++语言中的,在堆中分配的内存在没有将其释放掉的时候,就将其所有能访问这块内存的方式都删除掉(如,指针重新赋值)。这种情况就像,占着地儿,别人还没办法引用,又没释放空间,内存泄漏。
另一种情况是,在内存对象明明已经不需要的时候,还仍然保留着这块内存和它的引用。
第一种情况,在java中已经由于GC的存在,得到了很好的解决。所以java中的内存泄漏...
分类:
编程语言 时间:
2015-06-08 21:41:11
阅读次数:
210
面向对象的特征主要有以下几个方面:
1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地
注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一
部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。
2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了
一种明确表述共性的方法。对象的一个新类可以从现有的类中派生...
分类:
其他好文 时间:
2015-06-08 21:40:29
阅读次数:
230
1.构造器 Constructor 是否可被 override?
答:构造器 Constructor 不能被继承,因此不能重写 Overriding,但可以被重
载 Overloading。
2.
两个对象值相同(x.equals(y) == true),但却可有不同的 hash code,这
句话对不对?
答:不对,有相同的 hash code。
3.
是否可以继承 Stri...
分类:
其他好文 时间:
2015-06-08 21:38:04
阅读次数:
371
首先要明白,java只用的wrapper类型都是不可变的,什么是不可变类型呢?顾名思义,就是这种类型的对象一旦创建好之后,无论调用何种方法都无法改变该对象的任何的属性。String 源码中,它的所有属性都是private final的,因此,只有在构造string对象的时候,这些属性才是可以修改的,string类的方法中需要返回一个string的,如subString,concat等方法,都会先构...
分类:
编程语言 时间:
2015-06-08 13:29:38
阅读次数:
240
直接用break ;具体举例如下:
package com.test;
public class test {
public static void main(String[] args) {
for(int i=0;i<5;i++ ){
for(int j=0;j<i;j++){...
分类:
编程语言 时间:
2015-06-08 09:46:43
阅读次数:
159
说实话,这两个没有什么可比较的,概念相差那么大,但是很多笔试题之类的还喜欢考。只是长的像了一点而已。
overload是重载,对方法而言,同名不同参数,可以发生在当前类,也可以发生在父类和子类的身上。
override是覆盖,主要是发生在父类和子类的身上,子类继承了父类,然后写一个和父类同名,同参数的方法,那么父类的方法就被子类覆盖掉了。...
分类:
其他好文 时间:
2015-06-08 09:42:59
阅读次数:
150