原机械设计专业毕业~,后转行JAVA开发!
工作的第一年很容易总结------------浮躁。不管是在公司的工作还是自己的学习,都是浮躁,
首先是周围环境因素影响(os:其他人,其他项目组下班那么早,为什么我们还在做。。。。其他人的领导那么好,为什么我们的领导。。)
其次是学习态度,由于工作的繁重和压力,自己其他的学习时间就被本能的舍弃了(为什么我工作都这么累了,我回去就不能好好休息一下吗?感觉大多的知识和技术应该是再项目中学习到的。。。。)
再然后是个人性格(有了一点小的成就就沾沾自喜,感觉自己牛逼了~,止步不前)
等等
相信也会有人遇到这种问题,在工作的时候根本没有意识到,知道因为种种原因,在工作一年的情况下离职后,才渐渐认识到自我。JAVA一年,这是一个尴尬的时间段,不过大多数一年的经验还是会把自己的基础打得很牢固,相信也会有种种意外情况,我就是这个意外,在公司一年,写过很多的前端(dorado框架,国内小众框架,感觉没几个人用的那种),在这个上面花费了很多精力,加上学习态度不端正,错失打下基础的过程,丧~~~~~~~~~
找工作-----处处碰壁!!!!!!!
1,spring
2,SSM
3,SSH
4,JSP+Servlet
5,前端
6,常用SQL
就这几个最基本的东西(JAVA标配),完全是一问一懵逼~!想想离职前的高薪幻想就感觉脸红~
话不多说~看招
1,专项学习基础,任何东西都需要基础,在这个不上不下的经验下,你的基础最重要(除非你是专门学习某一块,且精通~)
2,态度,态度,态度!!!重要的事情讲三遍,不要把自己的定位放太高。
3,有计划地学,有计划地找(首先广撒网,各种面试笔试,回来后学习,几个来回,感觉基础知识就差不多了,然后在基础的知识上稍微多了解一些之前不会的,跟人家公司的技术人员有话聊。感觉差不多了,找到之前想去的公司,使劲投简历,多投几次,有可能没有看见什么的,之后的把握应该大很多)
4,待续~~~
另附上基础知识:
1
Java面试题全集(上)//blog.csdn.net/jackfrued/article/details/44921941很多基础的东西,建议先看。
各大公司Java后端开发面试题总结
//blog.csdn.net/sinat_35512245/article/details/59056120,你应该准备这些知识点
在看面试题的过程,你会遇到一些自己没接触过的或者以前没深入学习过的知识,例如最常问的HashMap内部实现原理,这就促使你得开始去看jdk的源码或者是学习一些新的东西。看源码是很重要的一步,起步很难,但是会让你收益良多,看源码的过程如果碰到无法理解的地方,可以百度看下别人的理解。我学习源码的过程中,看过几个人的关于源码的文章写的很不错,如下:
//www.cnblogs.com/xrq730/
1.面试准备
1)背个双肩包
2)换一身清爽的服饰
3)相关资料
2.面试流程
1)让你自我介绍
2)问Java基础知识
3)问项目
4)情景问题,例如:你的一个功能上了生产环境后,服务器压力骤增,该怎么排查。
5)你有什么想问面试官的
3.面试常问的知识点?
1)集合相关问题(必问):
HashMap、LinkedHashMap、ConcurrentHashMap、ArrayList、LinkedList的底层实现。
HashMap和Hashtable的区别。
ArrayList、LinkedList、Vector的区别。
HashMap和ConcurrentHashMap的区别。
HashMap和LinkedHashMap的区别。
HashMap是线程安全的吗。
ConcurrentHashMap是怎么实现线程安全的。
2)线程相关问题(必问):
创建线程的3种方式。
什么是线程安全。
Runnable接口和Callable接口的区别。
wait方法和sleep方法的区别。
synchronized、Lock、ReentrantLock、ReadWriteLock。
介绍下CAS(无锁技术)。
什么是ThreadLocal。
创建线程池的4种方式。
ThreadPoolExecutor的内部工作原理。
分布式环境下,怎么保证线程安全。
想要朝这方面发展或者真心有兴趣的。互联网java学习干货面试经验,不定期分享需要加java学习交流群,群号:282711949。这个是免费的,希望同学找我要的时候不要有理所应当的态度,毕竟都是我的心血,希望你是真的有一颗想要学好java的心,我也会尽所能的去帮助你成为一名优秀的程序员。
3)JVM相关问题:
介绍下垃圾收集机制(在什么时候,对什么,做了什么)。
垃圾收集有哪些算法,各自的特点。
类加载的过程。 双亲委派模型。
有哪些类加载器。
能不能自己写一个类叫java.lang.String。
4)设计模式相关问题(必问):
先问你熟悉哪些设计模式,然后再具体问你某个设计模式具体实现和相关扩展问题。
5)数据库相关问题,针对Mysql(必问):
给题目让你手写SQL。
有没有SQL优化经验。
Mysql索引的数据结构。
SQL怎么进行优化。
SQL关键字的执行顺序。
有哪几种索引。
什么时候该(不该)建索引。
Explain包含哪些列。
Explain的Type列有哪几种值。
6)框架相关问题:
Hibernate和Mybatis的区别。
Spring MVC和Struts2的区别。
Spring用了哪些设计模式。
Spring中AOP主要用来做什么。
Spring注入bean的方式。
什么是IOC,什么是依赖注入。
Spring是单例还是多例,怎么修改。
Spring事务隔离级别和传播性。
介绍下Mybatis/Hibernate的缓存机制。
Mybatis的mapper文件中#和$的区别。
Mybatis的mapper文件中resultType和resultMap的区别。
Mybatis中DAO层接口没有写实现类,Mapper中的方法和DAO接口方法是怎么绑定到一起的,其内部是怎么实现的。
7)其他遇到问题:
介绍下栈和队列。
IO和NIO的区别。
接口和抽象类的区别。
int和Integer的自动拆箱/装箱相关问题。 常量池相关问题。
==和equals的区别。
重载和重写的区别。
String和StringBuilder、StringBuffer的区别。
静态变量、实例变量、局部变量线程安全吗,为什么。 try、catch、finally都有return语句时执行哪个。
介绍下B树、二叉树。
ajax的4个字母分别是什么意思。
xml全称是什么。
分布式锁的实现。
分布式session存储解决方案。
常用的linux命令。
热门工具 换一换