Java全链路面试题-第一阶段
1,谈谈对面向对象思想的理解
2,JDK,JRE,JVM有什么区别?Java如
何实现跨平台?
3,
==和equals的区别
4,以下代码的执行结果是?
String s1 = new String(“zs”);
String s2 = new String(“zs”);
System.out.println(s1 == s2);
String s3 = “zs”;
String s4 = “zs”;
System.out.println(s3 == s4);
System.out.println(s3 == s1);
String s5 = “zszs”;
String s6 = s3+s4;
System.out.println(s5 == s6);
final String s7 = “zs”;
final String s8 = “zs”;
String s9 = s7+s8;
System.out.println(s5 == s9);
final String s10 = s3+s4;
System.out.println(s5 == s10);
5,讲述final的作用
6,String,StringBuffer,StringBuilder
区别
7,String s =
"java"与String s = new
7,String s =
"java"与String s = new
String(“java”)的区别
8,接口和抽象类的区别
语法和实际开发中如何应用两个角度来说明
9,算法题-求N的阶乘
设计一个方法求N的阶乘
比如: 3!=123 寻找规律,设计方法参数及返回值
10,算法题-求解斐波那切数列的第N个数是
几?
设计方法
如何实现递归求斐波那切数列第N个数字的值(传说中的不死神兔就是这个问题)
数字的规律:1,1,2,3,5,8,13,21…
11,请问下面的结果分别是多少?为什么?
Integer i1 = new Integer(12);
Integer i2 = new Integer(12);
System.out.println(i1 == i2);
Integer i3 = 126;
Integer i4 = 126;
int i5 = 126;
System.out.println(i3 == i4);
System.out.println(i3 == i5);
Integer i6 = 128;
Integer i7 = 128;
int i8 = 128;
System.out.println(i6 == i7);
System.out.println(i6 == i8);
12,方法的重写和重载的区别
12,方法的重写和重载的区别
13,算法题-编写冒泡排序
以数组为数据源,进行冒泡排序的程序编写
14,List和Set的区别
15,Collection和Collections的区别
16,谈谈ArrayList和LinkedList的区别
分别从增删改查来分析其差异
17,如何在双向链表A和B之间插入C?
提示,假设定位到A节点,则A.next为B节点。
请编写伪代码描述实现过程
18,谈谈HashSet的存储原理
重点是说清楚hashCode()和equals()的作用
19,ArrayList vs Vector
20,谈谈LinkedHashMap和HashMap的
区别(重点)
21,谈谈ConcurrentHashMap跟
HashMap(HashTable)的区别
22,开发一个自己的栈,你会怎么写?
22,开发一个自己的栈,你会怎么写?
主要是写好入栈和弹栈两个方法
24,谈谈IO流的分类及选择合适的流
25,serialVersionUID的作用是什么
26,请描述下Java的异常体系
27,罗列常见的5个运行时异常
28,罗列常见的5个非运行时异常
29,throw跟throws的区别
30,一道关于try catch finally返回值的问
题
请问下面程序执行的结果是?
31,创建线程的方式
32,一个普通main方法的执行,是单线程
模式还是多线程模式?为什么?
33,请描述线程的生命周期(重要)
34,谈谈Sleep和wait的区别(重要)
35,JDK提供的线程池有哪些?实际开发我
们该怎么使用?(重要)
重点要谈谈线程池的关键参数
36,谈谈你对线程安全的理解?(重要)
重点谈谈什么样的条件下,会出现线程不安全的问题。
37,谈谈你对ThreadLocal的理解(重要)
38,我们来谈谈类的加载机制(重要)
比如如何加载String这个类的
39,谈谈盒子模型
40,谈谈如何解决JS的兼容性问题?
41,谈谈JSP和Servlet的区别
42,谈谈Ajax的工作原理
44,谈谈Servlet的生命周期
46,描述JSP的9大内置对象(不重要)
47,JSP的4大域对象
48,描述Session跟Cookie的区别(重要)
49,转发和重定向的区别
49,转发和重定向的区别
50,谈谈三层架构
51,谈谈对MVC的理解(重要)
52,Iterator和ListIterator的区别?
(javase补充)
53,并发和并行的区别
55,谈谈数据库设计的三大范式及反范式
(重要)
56,说说常用的聚合函数有哪些及作用?
57,左连接,右连接,内连接,如何编写
SQL,他们的区别是什么?
58,如何解决SQL注入?
59,JDBC如何实现对事务的控制及事务边
界
60,谈谈事务的特点
61,谈谈事务的隔离级别
61,谈谈事务的隔离级别
63,synchronized和lock的区别
65,什么是XSS攻击?
66,说说TCP和UDP的区别
67,什么是死锁?如何防止死锁?
68,什么是反射?可以解决什么问题?
69,谈谈你对Spring的认识
70,Spring的bean作用域有哪些?
71,Spring的bean是线程安全的吗?
72,谈谈SpringAOP的背后原理
73,谈谈SpringMVC的工作流程
74,SpringMVC+Spring的父子容器关系
75,SpringMVC有哪些常用的注解?有什
么作用?
75,什么是事务的传播特性及Spring支持的
75,什么是事务的传播特性及Spring支持的
特性有哪些?
76,什么是悲观锁,什么是乐观锁?
78,hibernate的对象有几种状态?
79,谈谈MyBatis跟Hibernate的区别?
77,谈谈hibernate的缓存机制
80,MyBatis-缓存机制,从一级缓存到二
级缓存
86,MyBatis有哪些分页方式?
87,说说MyBatis分页插件的原理是什么?
84,从浏览器输入URL到页面加载完毕,都
经历了什么?
82,谈谈什么是TCP的三次握手
83,谈谈什么是TCP的四次挥手?
88,说说JVM的主要组成部分?
89,说说JVM的运行时数据区都包含哪些部分?
89,说说JVM的运行时数据区都包含哪些部分?
Java全链路面试题-第一阶段
最新推荐文章于 2024-01-29 15:35:39 发布
这是一份全面的Java面试题集,涵盖面向对象、JVM、集合框架、多线程、数据库、Web技术等多个方面。从基础概念如JDK、JRE、JVM的区别,到深入的算法题如阶乘和斐波那契数列,再到并发编程中的线程池和ThreadLocal,以及Web开发中的Servlet、JSP和Ajax,全面考察Java开发者的技术功底。此外,还涉及到了数据库设计、事务处理、Spring框架和MyBatis等企业级应用的知识。
摘要由CSDN通过智能技术生成