一,Java线程池的构造方法,里面参数的含义,以及原理:。

1,volatile和ThreadLocal解决了什么问题。

2,CAS在Java中的具体实现。

3,Java虚拟机的构成,以及一个Java对象的生命周期,还有堆栈和方法区中存储的内容。

4,JVM的GC过程,包括一些实际问题的分析,比如说明一个现象,让你分析可能是什么原因会导致这样的问题,应该如何对JVM参数进行调优。

5,synchronized和Lock的区别,以及底层实现原理。

6,FullGC和MinorGC触发的条件。

7,GCRoots的选择。

8,jmap,jstat,jstack等的使用场景,MAT等。

9,ClassLoader的加载过程。

10,CountDownLatch,CyclicBarrier和Semaphore等。

11,Java8的新特性等。

二,数据库:这里的数据库包含两种,一种一般是MySQL,另外是NoSql数据库,包括Redis,MongoDB等,一般会问的问题有:。

1,innerjoin和leftjoin等的区别。

2,SQL调优,explain,profile等。

3,InnoDB和Myisam的区别。

4,ACID。

5,数据库的事务隔离级别,以及他们分别能解决什么问题。

6,Redis的几种数据结构。

7,Redis是单线程还是多线程。

8,Redis的持久化。

9,悲观锁和乐观锁的含义。

10最左前缀索引,索引的数据结构,聚簇索引等(这块还没搞明白)。

三,框架。

因为spring是我们常用的框架,所以这块的内容会问的比较多,也会比较细。

1,Spring的两大特性(IoC和AOP)。

2,Spring的bean的生命周期。

3,Spring是如何解决Bean的循环引用问题的。

4,AOP的两种实现方式,以及两者的区别(这里其实使用了动态代理,具体动态代理分为两种,一种是JDK的动态代理,主要使用的是JDK的反射,还有一种是CGLib,两者区别可以自己搜索,文章比较多)。

5,AOP一般的使用场景。

6,Spring的事务原理。

首先我认为想去培训的人和不想去培训的人有两个心态,想去培训的人是决心要学的,不想去培训的人大部分都是浑水摸鱼的,所以放弃的概率是很高的,我的意思是说,学习编程最好是有老师的,当然有些人经济比较差,害怕最后学费打水漂,其实只要选好学校一心学习,迟早可以学会的,而且现在的学校有很多先就业和付款的,几大了帮助了条件不好的学生,所以小编建议学习Java开发选择一个培训班,不过在学习中需要注意以下几点:。

1.开始养成良好代码习惯。

2.先自己多思考,然后再去问老师,培养自己解决问题能力。

3.大量时间用来写代码,而不是看视频。

4.书籍用来回顾知识点,而不要用来一页一页翻书。

5.多看书,多动手是最重要的,实践出真理还是很正确的。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。