即将本科毕业的Java程序员需要用到的资料和复习方向

本文主要是介绍即将本科毕业的Java程序员需要用到的资料和复习方向,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

java应届生面试考点收集

 

这些知识点来自于之前去百度实习、阿里、蘑菇街校园招聘的电话面试

JavaSE

面向对象

封装、继承、多态(包括重载、重写)

 

常见区别

String、StringBuffer、StringBuilder的区别:http://www.cnblogs.com/dolphin0520/p/3778589.html

ArrayList、LinkedList区别:http://pengcqu.iteye.com/blog/502676

HashTable、ConcurrentHashMap区别:http://blog.csdn.net/wisgood/article/details/19338693

Collection和Collections的区别

equals方法和==的区别

BIO、NIO、AIO原理和区别(4篇+论文):http://qindongliang.iteye.com/blog/2018539

http://www.360doc.com/content/13/1029/20/9615799_325132478.shtml

http://weixiaolu.iteye.com/blog/1479656

http://blog.csdn.net/nbrremix/article/details/7352057

 

 

原理/源代码

HashMap:http://zhangshixi.iteye.com/blog/672697

String#intern:http://tech.meituan.com/in_depth_understanding_string_intern.html

synchronized原理:http://www.cnblogs.com/lanhj/p/4638951.html

CAS原理:http://blog.csdn.net/hsuxu/article/details/9467651

ThreadLocal(《Struts2技术内幕》第4章):http://www.jb51.net/books/161929.html

http://www.cnblogs.com/aigongsi/p/3150409.html

原子变量:http://blog.csdn.net/hong0220/article/details/38958121

不可变类(不太重要):http://my.oschina.net/jasonultimate/blog/166810

强/软/弱/虚引用:http://www.cnblogs.com/dolphin0520/p/3784171.html

CopyOnWrite原理:http://ifeve.com/java-copy-on-write/

ConcurrentHashMap原理:http://ifeve.com/concurrenthashmap/

ArrayBlockingQueue原理:http://blog.csdn.net/xin_jmail/article/details/26157971

ReadWriteLock原理:http://blog.csdn.net/zhuhezan/article/details/6613108

ReentrantLock原理:http://blog.csdn.net/luonanqin/article/details/41871909

 

 

 

垃圾回收

http://www.cnblogs.com/aigongsi/archive/2012/04/06/2434771.html

http://www.cnblogs.com/aigongsi/archive/2012/04/13/2446166.html

http://ifeve.com/gc-oriented-java-programming/

 

 

 

内存模型(jsr-133规范)

7篇:http://ifeve.com/java-memory-model-0/

 

并发多线程

28篇(有时间再看):http://ifeve.com/java-concurrency-thread-directory/

聊聊并发系列(10篇):http://ifeve.com/volatile/

线程池2篇:http://ifeve.com/java-threadpoolexecutor/

http://ifeve.com/java-scheduledthreadpoolexecutor/

并行(6篇):http://ifeve.com/fork-join-1/

两种线程模型(扩展知识):Actor模型(使用akka包)和共享内存线程(Java语言)模型:http://www.zhihu.com/question/29472057

http://www.open-open.com/lib/view/open1421202894171.html

无锁并发框架——Disruptor(扩展、重要):http://blogread.cn/it/article/6272?f=wb#original

 

处理并发的几种方式:同步(synchronized、CAS、volatile,注意CAS的ABA问题和volatile防止重排序特性)、隔离(ThreadLocal)、不可变(final,且在构造方法中不让this引用暴露出来)

 

 

JDK各版本特性

http://www.cnblogs.com/langtianya/p/3757993.html

常用为:1.5泛型、并发包,1.6的注解,各种优化,1.7的AIO,1.8的函数式API

 

JDBC

http://www.cnblogs.com/lanhj/p/3841024.html#jdbc

 

类加载

类加载的步骤:http://www.cnblogs.com/lanhj/p/3841024.html#leijiazai

 

异常

常见的RuntimeException:http://blog.csdn.net/qq635785620/article/details/7781026

 

 

JavaEE

 

JSP/servlet

jsp原理:http://www.cnblogs.com/xdp-gacl/p/3764991.html

Servlet生命周期:http://blog.csdn.net/yi_zz/article/details/8251810

 

Spring

事务管理器:http://www.cnblogs.com/aigongsi/p/3152419.html

http://www.cnblogs.com/aigongsi/p/3162260.html(记住事务传播级别)

AOP:http://blog.csdn.net/moreevan/article/details/11977115

IOC:http://www.cnblogs.com/ITtangtang/p/3978349.html

 

 

Tomcat

工作原理:http://www.ibm.com/developerworks/cn/java/j-lo-tomcat1/

设计模式:https://www.ibm.com/developerworks/cn/java/j-lo-tomcat2/

 

 

Hibernate

缓存:http://www.iteye.com/topic/249465

常见问题:http://blog.163.com/leijiangjiahe@126/blog/static/121546792010512114219410/

 

 

Struts2

系统架构:http://www.cnblogs.com/ningvsban/p/3733931.html

拦截器(AOP)原理:http://blog.csdn.net/csh624366188/article/details/7543342

值栈/OGNL原理:

http://sishuo和谐k.com/forum/blogPost/list/4068.html、《Struts2技术内幕》第6章

 

 

计算机网络

 

TCP/IP原理:http://blog.csdn.net/jesseshen/article/details/6638914

TCP/IP 三次握手/四次挥手(注意传输的数据是什么):http://blog.csdn.net/whuslei/article/details/6667471

HTTP原理:http://blog.csdn.net/hguisu/article/details/8680808

http://blog.csdn.net/hguisu/article/details/8683290(注意http请求头、响应头有哪些常见的数据)

HTTP常见响应码:http://blog.sina.com.cn/s/blog_4ae187490100x9u7.html(成功、重定向、服务器内部错误等)

TCP/IP和UDP的区别:http://www.cnblogs.com/bizhu/archive/2012/05/12/2497493.html

TCP窗口滑动、拥塞控制:http://blog.chinaunix.net/uid-26275986-id-4109679.html

POST和GET的区别:http://www.nowamagic.net/librarys/veda/detail/1919

Cookie和Session的区别:http://blog.csdn.net/axin66ok/article/details/6175522

TCP报头:http://leloup.blog.51cto.com/1113857/400531
TCP服务端和客户端图解:http://blog.chinaunix.net/uid-26868581-id-3274453.html (重要!记住此图)

当你输入一个网址时,实际会发生什么: http://www.cnblogs.com/wenanry/archive/2010/02/25/1673368.html

 

计算机操作系统

虚拟内存:http://wenku.baidu.com/link?url=7XrLRLdEL7M1NaUndj35Qm_6-Ib1oU2Thco22_232mEvo6kZtm9HOCMcajrtr-ghNVNOQn1TTd9IMvzK1MvRorh0GOCfvqML5QoldQ5_mne

页面置换算法:http://blog.sina.com.cn/s/blog_7d18758a01014ek2.html

银行家算法解决死锁问题:http://www.cnblogs.com/xuxu8511/archive/2012/04/06/2435053.html

进程/线程通信:http://www.cnblogs.com/mengyan/archive/2012/08/30/2664607.html

哲学家进餐问题:http://bbs.csdn.net/topics/390754385?page=1

生产者消费者问题(阻塞队列):Java的BlokingQueue

锁的读者写者问题:http://www.cnblogs.com/huangwei/archive/2010/05/19/1739659.htm

LRU 缓存:http://www.cnblogs.com/lzrabbit/p/3734850.html

死锁产生的原因和必要条件:http://blog.csdn.net/ysdaniel/article/details/6644418

 

 

 

 

Mysql数据库

索引原理:http://www.tuicool.com/articles/ZRN3qu

锁定原理(我的阿里2面面试官的博文):http://hedengcheng.com/?p=771

事务的ACID:http://blog.chinaunix.net/uid-7345847-id-2643947.html

事务隔离级别:http://www.cnblogs.com/lanhj/p/4601758.html

三级加锁协议:http://blog.sina.com.cn/s/blog_6d9ceb070100x3i1.html

http://zhidao.baidu.com/link?url=4_pHCTemLAwqmyxxpS-Ib4vpv--tVKHzQbD5EYJDfH9V11D2Gn48k2DnvOVkQeOsRxCc7csi7zbfWLEKWhfL8K

sql执行顺序:http://www.2cto.com/database/201306/217906.html

优化:http://www.cnblogs.com/zengxiangzhan/archive/2009/12/04/1617186.html

 

大数据

大数据算法算法题(转自http://blog.csdn.net/v_july_v):http://files.cnblogs.com/files/lanhj/%E5%85%AD%E6%8B%9B%E7%A7%92%E6%9D%8099%25%E6%B5%B7%E9%87%8F%E6%95%B0%E6%8D%AE%E5%A4%84%E7%90%86%E9%9D%A2%E8%AF%95%E9%A2%98.pdf

hadoop常见题(转自http://www.36dsj.com/archives/17345):http://files.cnblogs.com/files/lanhj/Hadoop%E9%9D%A2%E8%AF%95%E9%A2%98.pdf

hadoop资源管理:http://dongxicheng.org/mapreduce-nextgen/hadoop-1-and-2-resource-manage/

http://www.cnblogs.com/gw811/p/4077315.html

http://www.aboutyun.com/thread-8035-1-1.html (重要!)

http://www.dataguru.cn/article-974-1.html (重要!)

一致性hash算法:http://blog.csdn.net/cywosp/article/details/23397179/

Paxos算法: http://www.cnblogs.com/endsock/p/3480093.html

列式存储的优缺点:http://blog.csdn.net/dc_726/article/details/41143175

NoSQL:http://www.infoq.com/cn/news/2011/01/nosql-why/ 

http://blog.csdn.net/xyz_lmn/article/details/8052348

memcached:http://blog.csdn.net/tiedao123456789/article/details/9222475

hadoop input split和block的区别:http://blog.csdn.net/chlaws/article/details/22900141

SecondaryNamenode:http://www.360doc.com/content/12/0622/18/10248211_219843503.shtml

hadoop面经:http://www.aboutyun.com/thread-7153-1-1.html

 

 

设计模式

单例模式 double check失效的问题:http://bbs.csdn.net/topics/390216537

分类和原则:http://www.360doc.com/content/14/0607/19/15257968_384622316.shtml

关于标准的JDK库中使用的一些设计模式

  1.   装饰模式常被用于各种Java IO类中
  2.   单例模式常被用在运行环节中,Calendar以及各种其他类
  3.   工厂模式常被用于各种不可变类,比如Boolean。Boolean.valueOf()
  4.   构造者模式:Executors.newSingletonFactory()
  5.   原型模式:Object#clone()

考题:http://www.docin.com/p-177667661.html

拓展:MOVE模式:http://blog.csdn.net/lovelion/article/details/7798130

 

 

 

数据结构

 
跳表:http://blog.sina.com.cn/s/blog_72995dcc01017w1t.html

字典树:http://blog.csdn.net/sup_heaven/article/details/40111405

红黑树:http://www.cnblogs.com/fornever/archive/2011/12/02/2270692.html

倒排索引:http://www.cnblogs.com/aijianiula/p/3870664.html

汇总:http://dongxicheng.org/structure/structure-algorithm-summary/

本文转载自--https://www.cnblogs.com/lanhj/p/4672735.html

这篇关于即将本科毕业的Java程序员需要用到的资料和复习方向的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1062829

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

SpringBoot基于注解实现数据库字段回填的完整方案

《SpringBoot基于注解实现数据库字段回填的完整方案》这篇文章主要为大家详细介绍了SpringBoot如何基于注解实现数据库字段回填的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解... 目录数据库表pom.XMLRelationFieldRelationFieldMapping基础的一些代

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Java AOP面向切面编程的概念和实现方式

《JavaAOP面向切面编程的概念和实现方式》AOP是面向切面编程,通过动态代理将横切关注点(如日志、事务)与核心业务逻辑分离,提升代码复用性和可维护性,本文给大家介绍JavaAOP面向切面编程的概... 目录一、AOP 是什么?二、AOP 的核心概念与实现方式核心概念实现方式三、Spring AOP 的关

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

Java中的.close()举例详解

《Java中的.close()举例详解》.close()方法只适用于通过window.open()打开的弹出窗口,对于浏览器的主窗口,如果没有得到用户允许是不能关闭的,:本文主要介绍Java中的.... 目录当你遇到以下三种情况时,一定要记得使用 .close():用法作用举例如何判断代码中的 input

Spring Gateway动态路由实现方案

《SpringGateway动态路由实现方案》本文主要介绍了SpringGateway动态路由实现方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录前沿何为路由RouteDefinitionRouteLocator工作流程动态路由实现尾巴前沿S