资源描述:
《Java方向常见面试题.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Java方向常见面试题1.JSP中动态include与静态include的区别? 动态INCLUDE用jsp:include动作实现 它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数 静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面 <%@includefile="included.htm"%>2.多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?
2、答:多线程有两种实现方法,分别是继承Thread类与实现Runnable接口 同步的实现方面有两种,分别是synchronized,wait与notify(创建新执行线程有两种方法。一种方法是将类声明为Thread的子类。该子类应重写Thread类的run方法。接下来可以分配并启动该子类的实例;classPrimeThreadextendsThread{longminPrime;PrimeThread(longminPrime){this.minPrime=minPrime;}publicvoidrun(){//c
3、omputeprimeslargerthanminPrime . . .}}PrimeThreadp=newPrimeThread(143);p.start();创建线程的另一种方法是声明实现Runnable接口的类。该类然后实现run方法。然后可以分配该类的实例,在创建Thread时作为一个参数来传递并启动。classPrimeRunimplementsRunnable{longminPrime;PrimeRun(longminPrime){this.minPrime=minPrime;}publicvoidrun
4、(){//computeprimeslargerthanminPrime . . .}}PrimeRunp=newPrimeRun(143);newThread(p).start();)3.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。String不是基本数据类型,是一个对象。基本数据类型不是对象,是一个内存值,如:int,long,short,byte,boolean.char。4.写一个方法,实现字符串的反转,如:输入abc,输出cbaStringBuffer sb=new Strin
5、gBuffer("abcdefg"); String str=sb.reverse().toString();5.编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串。Stringstr=newString(“中”.getBytes(“GB2312”,”ISO-8859-1”));6.error和exception的区别?error:表示恢复不是不可能但很困难的情况下的严重错误,比如说内存溢出,不可能指望程序能处理这种错误;exception:表示一种设计或实现问题。它表示程序运行正常
6、,从来不发生的情况。7.是否可以继承String类?不可以。String是final类。8.给我一个最常见的运行时异常runtimeexception答:NullPiontExceptionSQLExceptionClassNotFoundExceptionArithmeticExceptionFileNotFoudExceptionIOException9.接口是否可继承接口,抽象类是否可实现(implements)接口,抽象类是否可继承具体类答:接口可以继承接口。抽象类可以实现接口。抽象类可以继承具体类(conc
7、reteclass)。10.构造器是否可被override?可以,通过子类覆盖。11.abstract的method方法是否可以同时是static,是否可以同时是native,是否可以同时是synchronized?答:Abstract不可以与static合用Abstract不可以与native合用Abstract不可以与synchronized合用12.Java有没有Goto?有,但没有用13.数组有没有length()这个方法?String有没有length()这个方法?答:数组有length这个属性,没有len
8、gth()方法String有length()这个方法,没有length属性15.String,Stringbuffer和StringBuilder的区别?java.lang.String是字符串常量;它们的值在创建之后不能改变。java.lang.StringBuffer是线程安全的可变字符序列。可将字符串缓冲区安全地用于多个线程。可以在必要时