我是一个二本院校,专业是机械工程,当时以为考上了大学就可以高枕无忧放开了玩,可以说我整个大学期间都是打LOL过来的。到了大四才发现,同学们都陆续去找了实习,有的做机械,也是PLC编程方向,我角色厂里的工作环境有点受不了。有的在大三的时候就自学了Java或者前端开发,都已经通过秋招找到了一份实习的工作,基本都在5K左右。那个时候我开始发慌了,但还是没有行动起来,一直拖到了今年年初,也就是大四的下学期,这个时候距离毕业还有不到半年的时间。
从今年我开始自学Java,如果不学真的不知道自己还能干什么,学机械的同学很多都转型学了编程,他们说这行发展的比较好,以后的空间大,待遇也都不错。有的人建议我去学Java,说Java的工作岗位比较多,选择工作的机会要多一些。我从自学Java到最后就业一共是用了8个月的时间,现在是在西安的一家做考公的公司做产品的维护,技术部大概是50多人,薪资是12K,其实觉得自己还算幸运,荒废了那么多时间,毕业还能找到一份工作,待遇还不错。所以学习什么时候都不晚,但一定是越早越好。
给还在大学的学弟们的忠实建议:
希望学弟们不要跟我一样,等到临近毕业后才醒悟要学习知识学习技术,能趁早尽量趁早,过去应该做的事情没有去做,后面都需要你加倍补回来。能把Java自学成功并且就业,除了要有决心和毅力之外,还需要学习Java的各种方法和技巧,下面几点可能就是初学者会犯的的错误学习方式:
1、感觉自己能看懂代码,但是动手不会写。这是明显的只看不写,初学者常犯的错误,每天学习的知识没有练习、作业去巩固,视频相当于白看。
2、没有项目的实践,我们学习Java最终要达到的目的就是要能独立开发项目,这样才能具备就业的水平,但是很多初学者在学习的时候只是看视频,每个阶段都不去做项目,这样学无非就是浪费时间。
3、学了后面就把前面忘了,不懂得如何去复习,不会把自己学过的知识应用到真实的场景中。正确的学习方式应该是一周复习一次,用小案例来复习前面学习的知识点。
4、没有养成好的代码规范,写的代码不规范,最后也不可能就业,我在找工作的时候发现,很多公司对于这一点非常在意。
新手常见的学习误区:
1.没有详细系统的学习规划,越学越迷茫,不知道应该往哪里走,特别有想放弃的想法。
2.学习的技术并不是现在企业需要的技术,跟不上时代,不具备竞争力。
3.学习效率非常低,遇到一个小问题解决起来很费时间,甚至有的时候会卡几个小时,导致信心受挫,对自己适不适合产生怀疑。
4.没有掌握学习Java的方法和技巧,导致走的弯路特别多,钻进程序的死胡同出不来。
几个小技巧大家参考一下:
1、基础很重要,不要盲目的追求新技术,往往决定着你思维深度而又被你忽略的就是你的基础!
2、多动手敲代码,有时电脑就和女朋友一样,它和你想的总是有差异的!
3、多百度,多搜索,百度会帮你解决掉百分之九十以上的问题!
4、多思考,急于动手写代码是大忌,熬夜写代码效率并不高。
给大家推荐一份GitHub 上标星 120k的资料,内容还真的不错,来简单看一下目录和部分内容截图。包括 Java 基础、Java 容器、Java 并发、Java 虚拟机和 Java IO,非常全面。
(一). 基础
1.Java 基本功
- Java 入门(基础概念与常识)
- Java 语法
- 基本数据类型
- 方法(函数)
2. Java 面向对象
- 类和对象
- 面向对象三大特征
- 修饰符
- 接口和抽象类
- 其它重要知识点
3. Java 核心技术
- 集合
- 异常
- 多线程
- 文件与 I\O 流
(二). 并发
1. 并发容器
- JDK 提供的并发容器总结
- ConcurrentHashMap
- CopyOnWriteArrayList
- ConcurrentLinkedQueue
- BlockingQueue
- ConcurrentSkipListMap
2. 线程池
- 使用线程池的好处
- Executor 框架
- (重要)ThreadPoolExecutor 类简单介绍
- (重要)ThreadPoolExecutor 使用示例
- 几种常见的线程池详解
- ScheduledThreadPoolExecutor 详解
- 线程池大小确定
3. 乐观锁与悲观锁
- 何谓悲观锁与乐观锁
- 乐观锁常见的两种实现方式
- 乐观锁的缺点
- CAS与synchronized的使用情景
(三). JVM
1. Java内存区域
- 概述
- 运行时数据区域
- HotSpot 虚拟机对象探秘
- 重点补充内容
2. JVM垃圾回收
- 揭开 JVM 内存分配与回收的神秘面纱
- 对象已经死亡?
- 垃圾收集算法
- 垃圾收集器
3. JDK 监控和故障处理工具
- JDK 命令行工具
- JDK 可视化分析工具