java常见面试题

 

一、JavaSE部分

❤1、Java基础

1、为什么重写equals还要重写hashcode
2、说一下map的分类和常见的情况

3、Object若不重写hashCode()的话,hashCode()如何计算出来的?
4、==比较的是什么?

5、若对一个类不重写,它的equals()方法是如何比较的?

6、java8新特性

7、说说Lamda表达式的优缺点。

8、一个十进制的数在内存中是怎么存的?

9、为啥有时会出现4.0-3.6=0.40000001这种现象?

10、Java支持的数据类型有哪些?什么是自动拆装箱?

11、什么是值传递和引用传递?

12、数组(Array)和列表(ArrayList)有什么区别?什么时候应该使用Array而不是ArrayList?

13、你了解大O符号(big-O notation)么?你能给出不同数据结构的例子么?

14、String是最基本的数据类型吗?

15、int 和 Integer 有什么区别

16、String 和StringBuffer的区别

17、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?

18、int和Integer有什么区别?

19、&和&&的区别?

20、在Java中,如何跳出当前的多重嵌套循环?

21、你能比较一下Java和JavaSciprt吗?

22、简述正则表达式及其用途。

23、Java中是如何支持正则表达式操作的?

24、请你说说Java和PHP的区别?

 

❤2、关键字


1、介绍一下Syncronized锁,如果用这个关键字修饰一个静态方法,锁住了什么?如果修饰成员方法,锁住了什么?

2、介绍一下volatile?

3、锁有了解嘛,说一下Synchronized和lock

4、讲一讲Java里面的final关键字怎么用的?

 

❤3、面向对象

1、wait方法底层原理

2、Java有哪些特性,举个多态的例子。

3、String为啥不可变?

4、类和对象的区别

5、请列举你所知道的Object类的方法。

6、重载和重写的区别?相同参数不同返回值能重载吗?

7、”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法?

8、String能继承吗?

9、StringBuffer和StringBuilder有什么区别,底层实现上呢?

10、类加载机制,双亲委派模型,好处是什么?

11、静态变量存在哪?

12、讲讲什么是泛型?

13、解释extends 和super 泛型限定符-上界不存下界不取

14、是否可以在static环境中访问非static变量?

15、谈谈如何通过反射创建对象?

16、Java支持多继承么?

17、接口和抽象类的区别是什么?

18、Comparable和Comparator接口是干什么的?列出它们的区别。

19、面向对象的特征有哪些方面

20、final, finally, finalize的区别。

21、Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?

22、abstract class和interface有什么区别?

23、Static Nested Class 和 Inner Class的不同

24、当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?

25、Java的接口和C++的虚类的相同和不同处。

26、JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?

27、内部类可以引用他包含类的成员吗?有没有什么限制?

28、两个对象值相同(x.equals(y) == true),但却可有不同的hash code说法是否正确?

29、重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分?

30、如何通过反射获取和设置对象私有字段的值?

31、谈一下面向对象的"六原则一法则"。

32、请问Query接口的list方法和iterate方法有什么区别?

33、Java中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思?

34、Java中,什么是构造函数?什么是构造函数重载?什么是复制构造函数?

35、hashCode()和equals()方法有什么联系?

 

 

❤4、集合

1、Map和ConcurrentHashMap的区别?

2、hashMap内部具体如何实现的?

3、如果hashMap的key是一个自定义的类,怎么办?

4、ArrayList和LinkedList的区别,如果一直在list的尾部添加元素,用哪个效率高?

5、HashMap底层,负载因子,为啥是2^n?

6、ConcurrentHashMap锁加在了哪些地方?

7、TreeMap底层,红黑树原理?

8、concurrenthashmap有啥优势,1.7,1.8区别?

9、ArrayList是否会越界?

10、什么是TreeMap?

11、ConcurrentHashMap的原理是什么?

12、Java集合类框架的基本接口有哪些?

13、为什么集合类没有实现Cloneable和Serializable接口?

14、什么是迭代器?

15、Iterator和ListIterator的区别是什么?

16、快速失败(fail-fast)和安全失败(fail-safe)的

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值