首先,学习java难吗?要说难,其实也不难,随便在网上找些入门的视频,从头开始看,大部分人都可以看得懂。基本的数据类型、判断语句、循环语句、面向对象以及Html入门,大家都可以看得懂。但是你如果想走的更远,请做好不断学习,不断汲取知识;前期放弃王者、LOL不要吃鸡,多花点时间将学过的代码多敲几次,熟能生巧。推荐一个Java学习交流 扣扣 群 934623944每天晚上在腾讯课堂都有一个Java技术学习课,会有老师在线直播讲课,帮助大家分析解答问题欢迎你的加入。
这里再说下,初中生、高中生可不可以学习java,答案当然是可以的,但是!注意了,初中生、高中生学习这行第一个是需要付出的更多;再者成功率很低。一方面是心智方面还没达到一定层次,再者社会对你的学历认可程度低,所以各位初中、高中童鞋还是努力学习,先考上大学,但如果自己感兴趣可以多看看视频积累一下经验,这样到大学时候,和别人相比自己还是有“一定”基础。
确实,也不是说这行什么门槛都没有。至少英语单词得多认识几个不是~
那么初学者该如何学习Java呢,前面有说到,在网上找一个java基础视频,大家都可以看懂。但是难就难在坚持和连贯。所谓坚持,就是你可能得花上2到3个月的时间去系统的学习Java基础、前端基础、主流框架(spring、SpringMVC、mybatis),再一个就是连贯~很多人就败在这个上面。如果你前面学的知识不牢固、没有充分的练习和消化,那么对你来说后面学的东西会非常吃力甚至不懂。慢慢的你会放弃学习。
上面说的基本上是你在通往Java学习的道路上必须去做到。相信我,我曾经在这条路上走过很多弯路。记得刚学习java那会,笔者抱着雄心壮志,急于求成,想着一鼓作气的把学习视频都看完,但是由于联系得不够,自己根本消化不了。最后不得不重头再学。
有了学习方法,接下来我们该遵循什么样的路线去学习呢!笔者也是精挑细选,将必须学习和掌握的知识进行一个梳理,掌握以下知识,你将成为一名合格的入门者。后续只需要学习了解一些热门的知识,就可以去面试找工作了。
1、基础入门必备
Java简介
了解什么是Java
代码语法基本格式和输出表达式。
了解Java大致的编译、执行过程
Java语言基础、判断、循环、数组 、类和对象
掌握Java的基本数据类型和引用数据类型有哪些;
掌握强制数据类型转换和自动类型提升规则;
常量如何声明及赋值;
判断、循环的语法及作用;
数组的声明及定义;
掌握类的概念以及什么是对象。
OOP封装、继承、多态
面向对象的三大特征,本节内容非常重要也相对来说较为难以理解,一定要耐下心来好好理解。
IO流操作,多线程及Socket
掌握IO读写流相关的类,了解字节流,字符流和字符流缓冲区;
掌握线程的概念,多线程的创建、启动方式,锁和同步的概念及运用;
掌握Socket通信的概念,如何声明客户端服务端,如何完成双端数据通信。
数据库基础(Mysql、Oracle)及JDBC
掌握数据库的基本概念,Mysql的安装、启动与停止
Mysql数据库客户端的安装与使用
JDBC的概念,在Java中使用Mysql驱动包连接Mysql
要求可以熟练的手写JDBC操作代码,面试经常问到
一阶段学习的都是概念、定义和基础,就像在建房子的时候打的地基,只有地基足够牢固,房子才会稳而且安全。以上所列除了多线程和socket,其余均需要重点学习,重点掌握和理解。另外java还有一个Swing编程,java的界面编程,此模块可以忽略,市面上有更好的解决方案,所以基本上没有公司需要用到此技术,我们也不必浪费时间在这个上面。
学习完一阶段,可以在网上找找一节简单的管理系统、学生成绩、银行存取款等等,自己尝试的先去模仿然后自己编写一个新的系统,当你解决完所有bug,调通系统后会有无比的成就感~~
但是!~~注意了,这还只是基础,还有很多路要走~
我们接着往下看第二阶段的学习内容!
2.前端入门基础
HTML基本标签、表格、表单和框架;
掌握网页的基本构成;
掌握HTML的基本语法;
表格的作用以及合并行、合并列;
表单标签的使用,提交方式get/post的区别;
框架布局的使用
CSS样式表;
掌握CSS的语法及作用,在html中的声明方式;
掌握CSS布局的函数使用;
掌握CSS外部样式的引入。
JavaScript;
掌握JS的语法及作用,在HTML中的声明方式;
掌握JS的运行方式;
掌握JS中的变量声明、函数声明、参数传递等;
掌握HTML中的标签事件使用;
掌握JS中的DOM原型
以上内容可以自行百度W3School,进行学习相关的知识
jQuery
了解如何使用jQuery
掌握选择器、文档处理、属性、事件等语法及使用;
能够灵活使用选择器查找到想要查找的元素并操作他们的属性;
动态声明事件;
动态创建元素。
Servlet
掌握Java中的Web项目目录结构;
掌握Java Web项目的重要中间件Tomcat;
掌握Servlet中的Request和Response;
掌握Servlet的基本运行过程。
掌握Servlet的声明周期
动态网页技术
JSP在Java Web中的角色;
JSP的编码规范,以及JSPServlet;
JSP显示乱码的解决办法等。
JSP数据交互
JSP中如何编写Java代码,如何使用Java中的类;
JSP中的参数传递。
状态管理Session和Cookie
掌握Session的作用及作用域;
掌握Cookie的作用及作用域;
掌握Session及Cookie的区别,存储位置,声明周期等;
掌握Session及Cookie分别在JSP和Cookie中的使用
JSTL和EL表达式
使用EL表达式输出page、request、session、application作用域中的值
使用JSTL来做逻辑判断或循环控制
Ajax
掌握Ajax的基本概念;
掌握jQuery中的Ajax请求;
掌握JSON
Filter、Listener;
掌握Filter和Listener
掌握Session过滤器和编码过滤器
学完以上知识,可以说你已经学完了要准备的基础知识了,还是和前面一样,自己琢磨一个系统,练练手,如果身边有这方面的熟手,建议这时候自己不耻下问一下,编程一直都是程序猿与bug不停的斗争过程,此时的你知识面还不够宽,知道的东西也不多,很容易碰到一些bug没办法自己去解决。
接下来我们可以开始学习主流框架的应用了
3.主流框架技术
Mybatis的应用
Mybatis的Mapping与实体映射;
Mybatis中的SQL语句写法;
Spring应用
Spring容器的作用;
Spring的AOP和IOC;
SpringMVC的应用
SpringMVC中的控制器注解、请求注解、参数注解、响应注解等;
SpringMVC中的静态资源处理;
SpringMVC的容器。
Spring+SpringMVC+Mybatis整合
SSM的整合使用;
Spring容器和SpringMVC容器
Maven
Maven的作用
Maven项目的创建
Maven的生命周期
Maven中央仓库及私服
Log4J2日志
如果你是一个持之以恒的学习者,坚持学完以上知识,那么恭喜你,已经成功入门java。此时你自己使用SSM框架开发一个小的系统,再跟之前自己学习的JDBC+Servlet+JSP开发做对比,相信你会有更多的收获。我们再学习一些常用技术,就可以大展身手,开始找工作啦!
4.需要了解的常用技术
如果你准备找工作,并且要拿到一份不错的薪资,那么以下技术是必须去了解熟悉的:
SpringBoot 的应用
了解SpringBoot的起源及优势
了解SpringBoot项目的格式以及创建方式
yaml语法特性
application配置文件及静态资源处理
Thymeleaf模板引擎
SpringBoot核心之WebMVCConfigurer
Struts2应用(了解即可)
什么是Struts2
Struts2的用法
Struts1和Struts2的区别
Hibernate应用(了解即可)
Hibernate在项目中的作用及优势;
Hibernate中的hbm与实体类之间的关系;
什么是HQL,什么是关系映射(一对一,多对一,多对多);
Redis入门和使用
Linux操作系统
Linux中的常用命令;
Linux下的jdk、tomcat安装;
Linux下的项目部署方式。
消息中间件的使用
推荐activemq的基础和与Spring的整合
学习SVN的使用,了解GIT
学习一下分页的使用方法
前端框架推荐学习BootStrap、EasyUI
最后重点强调一下,身边如果有已经入门的学长,一定要用好资源,多问多请教,再就是学习的过程中一定要多动手,多敲代码,不要被当时学习敲了一次,感觉自己就懂了的错觉给误导,可能第二天你就忘了前天所学的内容。看博客、看视频无非是让你了解、知道这个知识点,但是如果你想消化他,把他变成自己的东西,那么请你一定要多动手、多思考!多去敲敲代码你才会有所收获!