- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JAVA面试经典试题及答案1
一 基础篇
1. 谈谈final,finally,finalize 的区别
final 是一个修饰符,修饰类的时候表示类不可继承, 所以一个类不可能既是 abstract 又
是 final 的; 修饰变量的时候表示这个变量不可被更改并且必须赋初始值; 修饰方法的时候
表示方式不可被重写。
finally 通常和 try-catch 一起, 在finally 里代码无论是否发生异常都会执行到
finalize 是一个方法名。方式是定义在Object 类中,在对象从内存中释放之前会调用此
方法进行一些必要的清理工作。
2. Annoy Inner Class(匿名类) 是否可以extends(继承)其他类,是否可以implements(实现)
interface接口?
Annoy Inner Class 由于没有类名所以不可以extends其他类;可以实现interface
3. StaticNested Class 和 Inner Class 的不同
StaticNested Class 不需要外部类的实例来创建内部类的实例;内部类不能访问外部类
的非静态方法;它能具有静态的数据,属性,和匿名内部类。
4. 和 的不同
表示位运算符;表示逻辑运算符;
5. HashMap 和 Hashtable 的区别
HashMap 允许一个null 或者多个null 作为key, 而 Hashtable 不行
Hashtable 是线程同步的, 而HashMap 不是的
HashTable 的原理:通过节点的关键码确定对象的存储位置。给定节点的关键码k,通
过一定的散列函数H(k),得到散列值,这个值就是节点的存储地址
6. Colleciton 和 Collections 的区别
Collection 在java.util 下面,是所有集合类的父接口
Collections 也在java.util 下面,他封装了集合类的一些操作
7. 什么时候用 assert?
assert 是一条包含布尔表达式的语句,程序运行到当前语句的时候假定布尔返回值是
true,如果是false 则会抛出异常。常用语保证程序的最基本的正确性。断言在默认情况下是
禁用的,在编译时启用断言用 -source 1.4 标记,在运行时启用可以用 -ea 来标记,在运行
时禁用用 -dsa 来标记。
8. GC 是什么?为什么要用GC?
GC 是垃圾回收机制,使用GC 程序员就不用关心程序的内存管理。使用System.gc()和
Runtime.getRuntime().gc();能增加GC 启动的优先级,但是不保证一定执行。
9. String s new String(xyz); 创建了几个String Object.
2 个
10. Math.round(11.5)等于多少?Math.round(-11.5)等于多少?
12;-11; round 表示4 舍5入
11. short s1 1;s1 s1+ 1; 有什么错? short s1 1;s1+ 1;有什么错?
s1 s1+ 1; 有错,因为 1 是int 型,所以s1+ 1 后的类型是int,int 隐形转化为short
类型
s1+ 1;没有问题
12. sleep() 和 wait() 有什么区别?
sleep() 表示让当前运行的线程暂停一段时间,在时间满了后,这个线程被并不一定会
被立即执行,除非这个线程的优先级比当前线程的优先级高,或者当前线程执行完毕,或者
当前线程阻塞住了
wait ()如果线程对一个同步对象发出wait 请求后,该线程会暂停执行,进入等待状态
直到被唤醒或者等待时间到
两者的另一个关键区别是:前者不会释放对象锁;后者会释放对象锁
13. Java 有没有 goto ?
有但是没有用
14. 数组有没有length()方法?String 有没有 length()方法?
数组没有length()方法,但是数组有length 属性
String 有 length() 方法
15. overload 和override 的区别。
overload 和 override 都是 Java 多态的一种表现, overload 是同一个类中的多态性的
表现,override 是子类和父类多态的一种表现
overload 表示重载,一个类中同样一个方法名可
您可能关注的文档
最近下载
- 水电水利工程基本词汇对照表(法语).docx
- 车间班长个人年终总结范本5篇.docx
- 基于MATLAB的HDB3码编译器的优化设计与实现.pdf VIP
- 一汽奥迪AudiQ7汽车使用手册用户说明书pdf电子版下载.pdf
- 一汽奥迪Q7_车型手册电子版下载_非汽车用户车主车辆使用操作驾驶说明书.pdf VIP
- DL-T-5564-2019输变电工程接入系统设计规程.docx VIP
- 小学奥数题库《几何》-直线型-燕尾模型-2星题(含解析)全国通用版.docx
- 老年综合评估及干预技术应用规范.docx VIP
- 城市老旧小区适老化改造的路径探讨(工程毕业论文资料).doc
- 2023年中国城市居民养老政策体系与市场规模评估报告.pdf VIP
文档评论(0)