毕业两年的java面试总结及个人知识总结

前言:毕业两年多,一直从事java web方面的开发,感觉自己算踏入了一点点门槛吧,来记录下自己的成长吧,希望给广大网友们一些参考,共同进步。以下问题部分是面试被问到的,一些是自己的学习总结掌握了的知识,并没有被问到过,但仍需了解,不能为了面试而面试,这些知识仍需了解学习。

1. LinkedList 和 Arraylist区别 ? LinkedList可否模拟堆栈或者队列?

2. HashMap 和 HashTable区别?

3. 说一下HashMap 的put过程? key值怎么计算的?怎样降低hash冲突的? 满足条件后为什么变成红黑树? 是线程安全的吗,会发生什么情况?

4. HashMap 不安全的话那用什么来替代呢?简单的说下原理?ConcurrentHashMap的结构变化(例如:segement -> cas+synchronized)

5. synchronized 和voliate 的区别 ?  可重入锁了解吗?AQS有了解吗?

6. 线程有几种状态,启动方式有哪些? 线程池参数有哪些,并解释?说一下了解的线程池有几种?线程池创建为什么不让用Executors呢? 线程池是有哪些放弃策略?

7. ThreadLocal 有没有用过,使用到的地方有哪些呢?原理是什么?map中的key和value存的是什么?

8. mysql默认事务级别?解释各级别的区别,会发生什么现象并举个例子

9. Innodb 和 Myisam的区别 ? 聚集索引和非聚集索引区别等等,sql调优, 最左匹配原则?什么是回表?怎样避免全表扫?

10.什么情况会导致 @Transaction 失效

11.手写堆溢出,栈溢出的demo

12.接口幂等性怎么实现?

13.redis 数据类型,部署方式?(可能会问有没有自己部署过,例如:集群还是主从,怎么配置?)

14.redis一般的用途,分布式锁,数据缓存,异步消息队列,分别怎么实现的?

15.数据库层面怎么解决并发场景下的数据竞争问题?那代码层面呢?

16.分库有做过吗?没做的话有了解过吗?怎么做?

17.spring IOC 。 AOP:spring默认哪种aop, 两种代理的区别?aop的概念

18.mybatis的实现原理 (没被问到过,仍需了解)

19.手画出项目架构?

20.(算法)手写数组反转,链表反转,冒泡以及优化,快排 ,归并, 合并两个有序数组 ,跳台阶,两数之和,判断链表有环,从100W条数据中找到最小的十个

21.cpu占用率高, 排查使用的命令?

22.锁的升级过程 (无锁 - 偏向锁 -轻量级锁 -重量级锁,解释各个过程)

23.现场出sql题

24.B+树原理解释 ,画出来 。

25.说一些自己熟悉的设计模式,应用场景?

26.http 和tcp有什么区别呢?tcp和udp有什么区别? tcp三次握手,四次挥手,画出来。

27.手写单例模式。一般是双重锁,枚举的方式

28 hystrix说一下服务降级、治理、熔断

29 说一下cas

30.JVM调优参数

31.新生代怎么进行垃圾回收的?

32 虚引用 软引用 弱引用 强引用? Object o1 = new Object(); Object o2 = o1;  这时候GC,哪个会被回收掉?

33.垃圾回收算法

34.垃圾回收器

35 手画 JVM内存结构

36.自己对使用到中间件有过什么了解吗? 我想到的,zookeeper的watch机制,Tomcat 类加载器为何违背双亲委派模型,redis的内存回收策略,MQ发布/订阅模式等

总结:个人认为以上的知识普通的公司一般不会问这么深入,但仍需掌握,究其原理。很多人都说今年工作不好找,只要能沉下心学习掌握相关知识的话,机会还是很多的。现在的面试都不仅仅让你回答,更多的是让你用笔写出来,并解释清楚问题。所以不能只是背下来应付面试的话,就基本没戏了。

   学习的可以加java技术群:618626589,群主不是我,只是很喜欢这个群,藏龙卧虎,推荐一下

原文地址:https://www.cnblogs.com/eminemh/p/11994143.html

时间: 2024-07-31 04:17:24

毕业两年的java面试总结及个人知识总结的相关文章

[Java面试三]JavaWeb基础知识总结.

1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Internet上供外界访问的Web资源分为: • 静态web资源(如html 页面):指web页面中供人们浏览的数据始终是不变. • 动态web资源:指web页面中供人们浏览的数据是由程序产生的,不同时间点访问web页面看到的内容各不相同. l 静态web资源开发技术 • Html l 常用动态web资源开发技术: • JSP/Servlet.ASP

[Java面试九]脚本语言知识总结.

核心内容概述 1.JavaScript加强,涉及到ECMAScript语法.BOM对象.DOM对象以及事件. 2.Ajax传统编程. 3.jQuery框架,九种选择器为核心学习内容 4.JQuery UI插件 5.jQuery Ajax编程 6.jQuery第三方插件 7.反向Ajax编程(彗星) 一.JavaScript基础加强 JavaScript是在浏览器内容运行,无需编译.解释执行动态脚本语言,是一种弱类型语言,所有变量使用var定义. JavaScript的3个组成部分分别为:核心(E

Java面试技巧

[Java面试一]面试复习大纲. [Java面试二]Java基础知识精华部分. [Java面试三]JavaWeb基础知识总结. [Java面试四]Strust2总结及在面试中的一些问题. [Java面试五]Spring总结以及在面试中的一些问题. [Java面试六]SpringMVC总结以及在面试中的一些问题. [Java面试七]Mybatis总结以及在面试中的一些问题. [Java面试八]Hibernate总结以及在面试中的一些问题. [Java面试九]脚本语言知识总结. [Java面试十]浏

毕业两年工作三年小结

不知不觉毕业两年工作三年了,回忆记录一下. 大学.话还得从大学开始说起,高考两次顺利考上了武汉的一个著名专科学校,以极度郁闷的心情开始了我的大学生涯.大一上半年基本上是浑浑噩噩的过来的,印象最深刻的是和几个死党打牌,没有任何精神寄托,下半年开始学习C语言,听说是个很牛B的编程语言,就很想学习,差不多用了1个月的时间把高数课本看完了,以后上高数课我就拿出一本从同学那里借来的C语言看啊看,期末考试高数还考了98分,专科高数考得浅吗!C语言就没有那么好学了,到现在为止还是觉得要是哪天我能成为一名C语言

【原创】JAVA面试解析(有赞一面)

本文的题目出自博客 http://www.54tianzhisheng.cn/2018/07/12/youzan/ 但是作者没有给出答案,博主斗胆来制作答案版. 引言 说在前面的话: 本文适合人群:急等着换工作的人 我承认刷面试题很有用的,纵观几年来的JAVA面试题,你会发现每家都差不多.比如,你仔细观察,你会发现,HashMap的出现几率未免也太高了吧!连考察的知识点都一样,什么hash碰撞啊,并发问题啊!再比如JVM,无外乎考内存结构,GC算法等!因此,如果是为了面试,完全是有套路可以准备的

转:最近5年133个Java面试问题列表

最近5年133个Java面试问题列表 Java 面试随着时间的改变而改变.在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来越高级,面试官问的问题也更深入. 在我初入职场的时候,类似于 Vector 与 Array 的区别.HashMap 与 Hashtable 的区别是最流行的问题,只需要记住它们,就能在面试中获得更好的机会,但这种情形已经不复存在.如今,你将会被问到许多 Java 程序员都没有看过的领域,如 NIO,

java 面试 -- 4

Java面试知识点总结 本篇文章会对面试中常遇到的Java技术点进行全面深入的总结,帮助我们在面试中更加得心应手,不参加面试的同学也能够借此机会梳理一下自己的知识体系,进行查漏补缺(阅读本文需要有一定的Java基础:若您初涉Java,可以通过这些问题建立起对Java初步的印象,待有了一定基础后再后过头来看收获会更大).本文的问题列表来自于http://www.nowcoder.com/discuss/3043,在此感谢原作者的无私分享:) 1. Java中的原始数据类型都有哪些,它们的大小及对应

Java 面试-- 1

JAVA面试精选[Java基础第一部分] 这个系列面试题主要目的是帮助你拿轻松到offer,同时还能开个好价钱.只要能够搞明白这个系列的绝大多数题目,在面试过程中,你就能轻轻松松的把面试官给忽悠了.对于那些正打算找工作JAVA软件开发工作的童鞋们来说,当你看到这份题目的时候,你应该感动很幸运,因为,只要你把题目中的内容都搞懂了,在笔试的时候就可以游刃有余,通过面试只有半步之遥了,笔试只能反映你的JAVA技能.不管你是面试各个级别的JAVA工程师.架构师.还是项目经理,这个系列文章都是你最宝贵的资

[转载]java面试中经常会被问到的一些算法的问题

Java面试中经常会被问到的一些算法的问题,而大部分算法的理论及思想,我们曾经都能倒背如流,并且也能用开发语言来实现过, 可是很多由于可能在项目开发中应用的比较少,久而久之就很容易被忘记了,在此我分享一下在面试中经常被问到的一些基本的算法,也当做一次知识的巩固. 排序算法的一些特点: * 排序算法的分类如下:* 1.插入排序(直接插入排序.折半插入排序.希尔排序):* 2.交换排序(冒泡泡排序.快速排序):* 3.选择排序(直接选择排序.堆排序):* 4.归并排序:* 5.基数排序.* * 关于