我在这里: 首页 ? 面试试题 ? 浏览文章: 32道经典java面试题(完结篇)
« 智力面试题(脑筋急转弯)C/C++常见面试题深入剖析七(必看) »

32道经典java面试题(完结篇)




内容摘要:32道经典java面试题系列文章的完结篇,有接口方面的问题,有线程方面的问题,还有构造器问题,另外附带了几道编程题。读完这一系列文章,相信参加Java面试就应该无忧了。
关键词:JAVA面试题  
本文地址:http://www.teecool.com/post/2007101701.html
内容正文:

21,abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?
答案:都不能(尽供参考)

22,接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
答案:接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数(尽供参考)。

23,启动一个线程是用run()还是start()?
答案:启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。run()方法可以产生必须退出的标志来停止一个线程(尽供参考)。

24,构造器Constructor是否可被override?
答案:构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading(尽供参考)。

25,是否可以继承String类?
答案:String类是final类故不可以继承(尽供参考)。

26,当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
答案:不能,一个对象的一个synchronized方法只能由一个线程访问(尽供参考)。

27,try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?
答案:会执行,在return前执行(尽供参考)。


28,编程题: 用最有效率的方法算出2乘以8等於几?
答案:有C背景的程序员特别喜欢问这种问题。
2 << 3(尽供参考)

29,两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?
答案:不对,有相同的hash code(尽供参考)。

30,当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
答案:是值传递。Java 编程语言只由值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变,但对象的引用是永远不会改变的(尽供参考)。


31,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
答案:switch(expr1)中,expr1是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int、 short、 char 或者 byte。long,string 都不能作用于swtich(尽供参考)。

32,编程题: 写一个Singleton出来。
答案:Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。
一般Singleton模式通常有几种种形式:
第一种形式: 定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。
public class Singleton {
  private Singleton(){}
  //在自己内部定义自己一个实例,是不是很奇怪?
  //注意这是private 只供内部调用
  private static Singleton instance = new Singleton();
  //这里提供了一个供外部访问本class的静态方法,可以直接访问  
  public static Singleton getInstance() {
    return instance;   
   }
}
第二种形式:
public class Singleton {
  private static Singleton instance = null;
  public static synchronized Singleton getInstance() {
  //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次     
  //使用时生成实例,提高了效率!
  if (instance==null)
    instance=new Singleton();
return instance;   }
}
其他形式:
定义一个类,它的构造函数为private的,所有方法为static的(尽供参考)。

32道经典java面试题(完结篇)一文有面试题库网收集自互联网,并非本站原创,如原作者发现32道经典java面试题(完结篇)一文,请及时告知本站,本站会作出相关处理,谢谢!!!(联系方式:百度空间留言)

最近发表