阿里(60道面试题)

1.Java事件机制包括哪三个部分?分别介绍下。

2.使用线程池的原因?

3.线程池的作用有哪些?

4.几种常见的线程池及其各自的使用场景是怎样的。

5.线程池都有哪几种工作队列?

6.怎么理解无界队列和有界队列?

7.线程池中的几种重要的参数及流程说明。

8.什么是反射机制?

9.说说反射机制的作用。

10.反射机制会不会有性能问题?

11.你怎么理解http协议?

12.说说http协议的工作流程。

13.http有哪些请求提交方式?

14.http中的200,302,403,404,500,503都代表什么状态?

15.http get和post有什么区别?

16.你怎么理解cookie和session,有哪些不同点?

17.什么是web缓存?有什么优点?

18.什么是https,说说https的工作原理?

20.什么是虚拟主机及实现原理?

21.什么是Java虚拟机,为什么要使用?

22.说说Java虚拟机的生命周期及体系结构。

23.说一说Java内存区域。

24.什么是分布式系统?

25.分布式系统你会考虑哪些方面?

26.为什么说TCP/IP协议是不可靠的?

27.OSI有哪七层模型?TCP/IP是哪四层模型。

28.TCP协议的三次握手,四次挥手流程。

29.为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?为什么不能用两次握手进行连接?

32.描述一下Java异常层次结构。

33.什么是检查异常,不受检查异常,运行时异常?并分别举例说明。

34.finally块一定会执行吗?

35.正常情况下,当在try块或catch块中遇到return语句时,finally语句块在方法返回之前还是之后被执行?

36.try、catch、finally语句块的执行顺序。

37.Java虚拟机中,数据类型可以分为哪几类?

38.怎么理解栈、堆?堆中存什么?栈中存什么?

39.为什么要把堆和栈区分出来呢?栈中不是也可以存储数据吗?

40.在Java中,什么是是栈的起始点,同是也是程序的起始点?

43.Java中有没有指针的概念?

44.Java中,栈的大小通过什么参数来设置?

45.一个空Object对象的占多大空间?

46.对象引用类型分为哪几类?

47.讲一讲垃圾回收算法。

48.如何解决内存碎片的问题?

49.如何解决同时存在的对象创建和对象回收问题?

50.讲一讲内存分代及生命周期。

51.什么情况下触发垃圾回收?

52.如何选择合适的垃圾收集算法?

53.JVM有哪三种垃圾回收器?

54.JVM中最大堆大小有没有限制?

55.如何进行JVM调优?有哪些方法?

56.堆大小通过什么参数设置?

60.如何解决业务层的数据访问问题?

61.为了解决数据库服务器的负担,如何做数据库的分布?

62.什么是著名的拜占庭将军问题?

63.讲讲CAP理念。

64.怎么理解强一致性、单调一致性和最终一致性?

65.分布式系统设计你会考虑哪些策略?