即将本科毕业的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

相关文章

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

关于数据埋点,你需要了解这些基本知识

产品汪每天都在和数据打交道,你知道数据来自哪里吗? 移动app端内的用户行为数据大多来自埋点,了解一些埋点知识,能和数据分析师、技术侃大山,参与到前期的数据采集,更重要是让最终的埋点数据能为我所用,否则可怜巴巴等上几个月是常有的事。   埋点类型 根据埋点方式,可以区分为: 手动埋点半自动埋点全自动埋点 秉承“任何事物都有两面性”的道理:自动程度高的,能解决通用统计,便于统一化管理,但个性化定

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory

康拓展开(hash算法中会用到)

康拓展开是一个全排列到一个自然数的双射(也就是某个全排列与某个自然数一一对应) 公式: X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0! 其中,a[i]为整数,并且0<=a[i]<i,1<=i<=n。(a[i]在不同应用中的含义不同); 典型应用: 计算当前排列在所有由小到大全排列中的顺序,也就是说求当前排列是第