欢迎来到天天文库
浏览记录
ID:32179325
大小:44.00 KB
页数:7页
时间:2019-02-01
《java面试经典试题及答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一基础篇1.谈谈final,finally,finalize的区别final是一个修饰符,修饰类的时候表示类不可继承,所以一个类不可能既是abstract又是final的;修饰变量的时候表示这个变量不可被更改并且必须赋初始值;修饰方法的时候表示方式不可被重写。finally通常和try-catch一起,在finally里代码无论是否发生异常都会执行到finalize是一个方法名。方式是定义在Object类中,在对象从内存中释放之前会调用此方法进行一些必要的清理工作。2.AnnoyInnerClas
2、s(匿名类)是否可以extends(继承)其他类,是否可以implements(实现)interface接口?AnnoyInnerClass由于没有类名所以不可以extends其他类;可以实现interface3.StaticNestedClass和InnerClass的不同StaticNestedClass不需要外部类的实例来创建内部类的实例;内部类不能访问外部类的非静态方法;它能具有静态的数据,属性,和匿名内部类。4.&和&&的不同&表示位运算符;&&表示逻辑运算符;5.HashMap和Has
3、htable的区别HashMap允许一个null或者多个null作为key,而Hashtable不行Hashtable是线程同步的,而HashMap不是的HashTable的原理:通过节点的关键码确定对象的存储位置。给定节点的关键码k,通过一定的散列函数H(k),得到散列值,这个值就是节点的存储地址6.Colleciton和Collections的区别Collection在java.util下面,是所有集合类的父接口Collections也在java.util下面,他封装了集合类的一些操作7.什么
4、时候用assert?assert是一条包含布尔表达式的语句,程序运行到当前语句的时候假定布尔返回值是true,如果是false则会抛出异常。断言在默认情况下是禁用的,在编译时启用断言用-source1.4标记,在运行时启用可以用-ea来标记,在运行时禁用用-dsa来标记。8.GC是什么?为什么要用GC?GC是垃圾回收机制,使用GC程序员就不用关心程序的内存管理。使用System.gc()和Runtime.getRuntime().gc();能增加GC启动的优先级,但是不保证一定执行。9.Strin
5、gs=newString("xyz");创建了几个StringObject.2个10.Math.round(11.5)等于多少?Math.round(-11.5)等于多少?12;-11;round表示4舍5入1.shorts1=1;s1=s1+1;有什么错?shorts1=1;s1+=1;有什么错?s1=s1+1;有错,因为1是int型,所以s1+1后的类型是int,int隐形转化为short类型s1+=1;没有问题2.sleep()和wait()有什么区别?sleep()表示让当前运行的线程暂停
6、一段时间,在时间满了后,这个线程被并不一定会被立即执行,除非这个线程的优先级比当前线程的优先级高,或者当前线程执行完毕,或者当前线程阻塞住了wait()如果线程对一个同步对象发出wait请求后,该线程会暂停执行,进入等待状态直到被唤醒或者等待时间到。3.Java有没有goto?有但是没有用4.数组有没有length()方法?String有没有length()方法?数组没有length()方法,但是数组有length属性String有length()方法5.overload和override的区别。
7、overload和override都是Java多态的一种表现,overload是同一个类中的多态性的表现,override是子类和父类多态的一种表现overload表示重载,一个类中同样一个方法名可以有不同的参数override表示重写,子类中可以重新实现父类的方法overload的返回值不可变6.Set里的元素是不能重复的,用什么方法来区分重复与否呢?用==还是equals()?他们有和区别?用equals方法,==方法是比较对象的引用地址,equal默认是比较引用,但是可以被重写是逻辑相等,一
8、般重写equal也要修改相应的hashCode方法7.给我你最常见的一个runtimeexceptionNullpointException,IllegalArgumentException,ArrayIndexOutofBoundsException8.Object对象中的方法toString()/hashCode()/equals()/notify()/notifyAll()/getClass()/wait()9.error和exception有什么区别?error表示一种不是
此文档下载收益归作者所有