(word)J2EE面试题.docVIP

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(word)J2EE面试题

学校:_______________班级__________姓名:___高杰______ J2EE测试(120分钟,总分100分) 谈谈final、finally、finalize的区别?(5分) 答:如果被final修饰符声明则不能作为父类实现继承,finally是执行异常处理是的清除操作。Finalize??? 答:final?修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 ? abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载 finally?再异常处理时提供 ? finally ? 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 ? catch ? 子句就会执行,然后控制就会进入 ? finally ? 块(如果有的话)。 ? ? finalize?方法名。Java ? 技术允许使用 ? finalize() ? 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 ? Object ? 类中定义的,因此所有的类都继承了它。子类覆盖 ? finalize() ? 方法以整理系统资源或者执行其他清理工作。finalize() ? 方法是在垃圾收集器删除对象之前对这个对象调用的。 String 对一串字符进行操作。不可变类。String: 是对象不是原始类型. 为不可变对象,一旦被创建,就不能修改它的值. 对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去. String 是final类,即不能被继承. StringBuffer 也是对一串字符进行操作,但是可变类是一个可变对象,当对他进行修改的时候不会像String那样重新建立对象 它只能通过构造函数来建立, 1.HashTable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。 2.HashTable不允许null值(key和value都不可以),HashMap允许null值(key和value都可以)。 3.HashTable有一个contains(Object value),功能和containsValue(Object value)功能一样。 4.HashTable使用Enumeration,HashMap使用Iterator。 以上只是表面的不同,它们的实现也有很大的不同。 5.HashTable中hash数组默认大小是11,增加的方式是 old*2+1。HashMap中hash数组的默认大小是16,而且一定是2的指数。 6.哈希值的使用不同,HashTable直接使用对象的hashCode,代码是这样的: int hash = key.hashCode(); int index = (hash 0x7FFFFFFF) % tab.length; 而HashMap重新计算hash值,而且用与代替求模: int hash = hash(k); int i = indexFor(hash, table.length); static int hash(Object x) {   int h = x.hashCode();   h += ~(h 9);   h ^= (h 14);   h += (h 4);   h ^= (h 10);   return h; } static int indexFor(int h, int length) {   return h (length-1); } 以上只是一些比较突出的区别,当然他们的实现上还是有很多不同的,比如 HashMap对null的操作 “xyz“);创建了几个String Object?(5分) 答:只创建了两个对象,引用对象s,字符串对象xyz; equals 方法(是String类从它的超类Object中继承的)被用来检测两个对象是否相等,即两个对象的内容是否相等。 ==用于比较引用和比较基本数据类型时具有不同的功能: 比较基本数据类型,如果两个值相同,则结果为true 而在比较引用时,如果引用指向内存中的同一对象,结果为true 使用 set 的 contains判断元素是否存在 如果存在 方法会返回true 就不添加 否则就添加 用最有效的方法算出2乘以8等于多少?(5分) System.out.pr

文档评论(0)

qvg68726 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档