1.异常处理机制的简单原理和应用
2.垃圾回收的优点和原理,并考虑2种回收机制
3.线程同步的方法
4.Error与Exception有什么区别
5.java中一个类被声明为final类型.
6.heap和stack有什么区别
7.系统要使用超大整数(超过long长度范围),请你设计一个数据结构来存储这种超大型数字以及设计一种算法来实现超大整数加法运算
8.设计一个图形系统,请你设计基本的图形元件(Point,Line,Rectangle,Triangle)的简单实现
9.final, finally, finalize的区别
10.Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)
11.Static Nested Class 和 Inner Class的不同
12.&和&&区别
13.HashMap和Hashtable的区别
14.Collection 和 Collections的区别
15.GC是什么? 为什么要有GC
16.String s = new String("xyz");创建了几个String Object
17.sleep() 和 wait() 有什么区别
18.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
19.Java有没有goto?
20.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
21.最常见到的runtime exception
22.abstract class和interface有什么区别?
23.abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized
24.接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
25.构造器Constructor是否可被override
26.当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法
27.用最有效率的方法算出2乘以8等於几
28.两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
29.当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递
30.swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上(int、short、char、byte)
31.Singleton
32.Hashtable和HashMap区别
33.JVM加载class文件的原理机制
2.垃圾回收的优点和原理,并考虑2种回收机制
3.线程同步的方法
4.Error与Exception有什么区别
5.java中一个类被声明为final类型.
6.heap和stack有什么区别
7.系统要使用超大整数(超过long长度范围),请你设计一个数据结构来存储这种超大型数字以及设计一种算法来实现超大整数加法运算
8.设计一个图形系统,请你设计基本的图形元件(Point,Line,Rectangle,Triangle)的简单实现
9.final, finally, finalize的区别
10.Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)
11.Static Nested Class 和 Inner Class的不同
12.&和&&区别
13.HashMap和Hashtable的区别
14.Collection 和 Collections的区别
15.GC是什么? 为什么要有GC
16.String s = new String("xyz");创建了几个String Object
17.sleep() 和 wait() 有什么区别
18.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
19.Java有没有goto?
20.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?
21.最常见到的runtime exception
22.abstract class和interface有什么区别?
23.abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized
24.接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
25.构造器Constructor是否可被override
26.当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法
27.用最有效率的方法算出2乘以8等於几
28.两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
29.当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递
30.swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上(int、short、char、byte)
31.Singleton
32.Hashtable和HashMap区别
33.JVM加载class文件的原理机制
在Java中,类装载器把一个类装入Java虚拟机中,要经过三个步骤来完成:装载、链接和初始化,其中链接又可以分成校验、准备、解析 装载:查找和导入类或接口的二进制数据; 链接:执行下面的校验、准备和解析步骤,其中解析步骤是可以选择的; 校验:检查导入类或接口的二进制数据的正确性; 准备:给类的静态变量分配并初始化存储空间; 解析:将符号引用转成直接引用; 初始化:激活类的静态变量,初始化Java代码和静态Java代码块
要求每个对象都包含一个位字段,称为标记位,或在算法运行时建立一个外部数组以存放标记位。该算法从遍历堆中所有已分配的内存块开始,重新设置块的标记位,检查所有指向堆中对象的字段和变量,将被引用对象的标记位设置为真,然后找出所有未标记对象,将其放到自由块列表中来回收空间。
标记并清除优点:存储开销较低且不会影响运行时的执行性能;
缺点:当内存垃圾收集器运行时可能会占用很长时间。