这是什么啊

java面试题

1、String StringBuffer的区别StringBuilder
string由于是final类型,所以他的字符串一旦确定,就不会被改变,每次重新赋值或其他操作,都是创建一个新的字符串对象,这样以来就消耗了不少性能,但在String S1 = “This is only a” + “ simple” + “test”;这样的拼接中,速度很快,因为Java虚拟机任务他就是String S1 = “This is only a simple test”; ,但要是不用引用的字符串拼接速度就不行了
stringbuffer 直接操作对象的引用,所以会比string快
stringbuilder线程不安全,所以比stringbuffer快

2、异常分类Runtime异常(非受检异常)和受检异常
    非受检异常也可以自己处理,一般有虚拟机自动处理。出现这个异常,虚拟机会一直往上一个抛出,线程中抛出,线程退出,如果是多线程就有thread.run()抛出,单线程就由main抛出
1、NullPointerException - 空指针引用异常
2、ClassCastException - 类型强制转换异常。
3、IllegalArgumentException - 传递非法参数异常。
4、ArithmeticException - 算术运算异常
5、ArrayStoreException - 向数组中存放与声明类型不兼容对象异常
6、IndexOutOfBoundsException - 下标越界异常
7、NegativeArraySizeException - 创建一个大小为负数的数组错误异常
8、NumberFormatException - 数字格式异常
9、SecurityException - 安全异常
10、UnsupportedOperationException - 不支持的操作异常
受检异常由自己抛出或trycatch处理
3、说出ArrayList,Vector, LinkedList的存储性能和特性
   看集合总结笔记
4、final, finally, finalize的区别。
修饰符,异常处理,object类中的一个方法垃圾回收时被调用
5、重载和重写的区别

重写方法的规则

    1、参数列表必、返回值须完全与被重写的方法相同

    2、访问修饰符的限制一定要大于被重写方法的访问修饰符(public>protected>default>private)

    3、重写方法一定不能抛出新的检查异常或者比被重写方法申明更加宽泛的检查型异常。例如:

而重载的规则:

    1、必须具有不同的参数列表的子父类;

6、errorexception有什么区别?

Error和Exception都是Throwable的子类。区别就是Error比Exception更严重,不易通过后续代码处理和修复,不应该被代码catch到的错误。而Exception是指严重程度较轻的程序问题,相较于Error更容易被后续代码处理和修复的,有些需要通过try catch代码处理,有些不建议通过try catch代码处理。

7abstract classinterface有什么区别?

抽象类有非抽象方法,接口只有抽象方法
抽象类不能多继承,接口可以
接口只能定义尾static final
8、取整方法
Math类中提供了三个与取整有关的方法:ceil,floor,round,
celil往大了取  floor往小了取 round原数+0.5取结果
9、常见异常
10、==和equals方法区别
==是一个符号,方法不能被重写,在类中比较的是地址,在基本数据类型中比较的是值本身,equals是一个类中的方法,可以被重写
如果String str1 = "123";
String str2 = "123";
则str1==str2也为true,因为"123"已经被分配了地址,str1和str2都是引用了相同的地址
11、

构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading

12、switch传的参数类型,可传基本数据类型和string

13、

多线程有两种实现方法,分别是继承Thread类与实现Runnable接口

14、设计模式
15、排序
16、弃用stop和suspend方法原因
    stop不安全,supend在挂起线程时,如果线程没有释放锁会造成死锁

17、什么是java序列化,如何实现java序列化?

序列化就是一种用来处理对象流的机制,可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化的实现:将需要被序列化的类实现Serializable接口,i然后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。

18

说出一些常用的类,包,接口,请各举5

常用的类:BufferedReader  BufferedWriter  FileReader  FileWirter  String  Integer

常用的包:java.lang  java.awt  java.io  java.util  java.sql

常用的接口:Remote  List  Map  Document  NodeList

19匿名内部类可以实现或继承类或接口





posted @ 2015-12-03 22:02  陈旭缘  阅读(155)  评论(0)    收藏  举报
这是什么