返学费网 > 培训机构 > 全国IT培训中心

13081913316

全国统一学习专线 8:30-21:00

想了解java学习好不好吗?想了解Java学习八大忌,开始的时候为什么我总是学不好Java?,自学5个月Java找到了9K的工作,我的方式值得大家借鉴?? 吗?......本文带你一探究竟。

1.Java学习八大忌

1.人云亦云,没有思想好多人就是听了个Java收入高,不是相关行业的要转行,不是相关专业的就要自学,就要培训。但是自己没有对自己进行过评估,跟风就上,不是说一定学不好,而是对于大部分这种情况来说确实不易。初学少则学习数月,多则一二年,尚不知人最宝贵的并非金钱,而是时间。2.一叶障目,七零八碎好多吧友学Java就知道是Java用来开发网站和软件,其实软件开发的范畴要比Java大的多。本人网站没有开发过,但是BS系统开发过一些(主要是XX NB部门的项目类资金类管理软件)。打个不太准确的比方,软件开发就是盖幢高楼,而Java编码就是浇筑搬砖。如果没有设计图纸,靠纯劳动也盖不成楼,软件工程能成为一专业,说明需要的知识很多,所以要想职业有高光时刻,必须系统的学习,而不是只扣住Java不放,从更高的层次审视开发,当然Java学习必不可少,高级职位很多也是从Java程序员干上来的,总结一句话就是,想有职业发展不学Java肯定不行,但是只学Java也肯定不行。3.学不得法,无处用力好多初入行者晕头转向,找Java书一堆一堆,网上视频一堆一堆,不知道从那儿开始,写个也能写出,但是一想离实际项目还差十万八千里。实际Java学习的好方法在于系统的看,重点的练,不断的总结。初学Java(主要是Java语言,不涉及Web和框架)应该以煅炼基本语法,面向对象,重点APl为主。就拿APl来说,有些需要知道和了解,例如lO,多线程,网络编程,能把书上视频上的例子调试明白,思想弄明白就可以,例如知道二进制文件读写需要用字节流,流可以使用包装类等,线程会死锁,如何编写避免死锁等基本知识,能满是面试就行了。如果参加工作,一般公司也不会让初级人员编写多线程,网络,lO等代码,公司一般会提供包装好的类库在项目中使用,而且初入行者也不常用。建议重点学学字符串处理呀,JDBC数据库访问这些类库,虽然这些也可能封装使用,这写在项目中会常常使用。Java APl成千上万,学不过来,只有学好常用的,遇上不常用的,可以通过查APl Doc和百度搜索学习,煅练出学习能力才能解决更多问题,这就是授人以鱼,不如授人以渔,我们应该先要鱼填饱肚子,然后练习渔的本领,抓更多的鱼。4.急功尽利,心浮气躁Java学习是一个循序渐进的过程,但是有人还是总想跳着学。例如,现在流行SSH或SSM框架什么的,有些人就学完Java基础直接学框架,例如不学Java Web基础,就学习Struts,Spring MVC,貌似照猫画虎好像也能通,但是遇上一点问题就自己解决不了,因为他不懂Struts框架就是个MVC思想通Java Web基本技术实现的,Struts的前端控制器就是个Servlet(Struts1.x,Struts2没用过,现在用Spring MVC)。当然,可能工作不等待系统的顺序的学,那就后补就行,先学框架在工作中用,然后再学基本Java技术,慢慢理解框架思想。5.不修内功,只借外力好多初学者善于利用搜索引擎在网上找代码,引入到项目中,有些认真负责的会把代码学习理解变成自己的,有些就是沾上完成任务就行了,这样基本没有什么解决问题的能力,不会每次你遇到的问题网上都有一模一样的。这里举个例子,有次去朋友(公司老总)的公司玩,朋友说正好有个问题,自己弄个文件服务器,后台NET,前台NET,用Http协议传送文件可以,后台Java,前台NET就不行,后来发现是他们项目经理网上抄的代码,而网上代码中少一个“-”号,前后都是NET能容点错能用,Java后台就不行,自己解决一个月弄不明白,就是代码没抄明白。从来不反对抄代码,但反对抄不明白。6.闭门造车,不善交流 在应用软件开发的过程中,交流是十分重要和有必要的,需求人员与客户充分交流才能保证软件能够满足用户需要,项目经理与开发人员充交流才能保证项目开发进度和质量。有些人在单位总是防备着人,生怕教了徒弟,打死师父。其实做为一个人心胸还是要宽广一点,你教别人其实也是自己提高的过程,假如所教之人资质一般,你教也不会超越你,而且将来有可能成为你朋友和帮手。假如所教之人是天才一般,你不教他将来也可能超过你,而你可能丧失了与末来大牛成为朋友的机会。所以交流是提升自己能力,品质,魅力的途经,将来你会发现分享越多,收获越多。7.遇挫恢心,不够坚韧 有些人带满腔热情进入Java世界,但Java世界远不是所想的那么美好。一个一个打击不断袭来,让这些初学者对自己的能力及是否适应这个行业产生了质疑。大家都羡慕那些大牛,小牛神一般的存在,无所不知的知识,指点江山的锐气。却不知人家也是在无数次失败,打击中挺了过来,不断的锤练技术,能力,才有所成。不要总看到贼吃肉,不见贼挨打。所以,劝初学者们要入行前首先花一断时间评估一下自己,如果说是热爱编程,甚至疯狂是最好的,然后就下定决心,遇多大困难,只要不死也得走下去。如果是不热爱,不执着,就是听着工作,收入不错,试着玩,建议还是别入行。搭钱搭时间,最后白瞎了自己。木有雄心壮志,死战到底精神,尽早别碰软件开发。8.小成自满,目中无人 有些人学成一点,学会一点就觉自己牛B轰轰,天是老大,他是老二。不可否认,随经验及能力的提升,工作或事业会给带来成就感,让人飘飘然,这很正常。如果一直飘下去,会双眼摸瞎,心态失衡,会发现越来越多的人不喜欢自己,与人合作困难,技术也不如前,最终对自己发展及工作产生致命影响。如果飘一会儿满足一下,然后忘掉以前成绩,谦虚做人,你会发现成就越来越大,威信越来越高,职位收入水涨船高。所以谦虚品质是一个软件人成功之关键,而不是这技术,那框架的。人都做不好,还谈什么做事。

2.开始的时候为什么我总是学不好Java?

首先感谢很多小伙伴出于对我的信任来向我询问一些有关学习Java的问题,其次我觉得这些小伙伴的语气太过客气了,一句“你好”就足矣了,因为“闻道有先后,术业有专攻”嘛,不同的领域我们可以互而为师,我也只是在你一个陌生的领域懂的比你多一点而已。在这篇文章我不会去赘述Java学习的第一步,第二步...我就简单的谈谈自己在从0开始学习到能进行企业开发的一点微小的经历和经验,我讲述的东西有好有坏,希望初学者或者迷茫点的小伙伴剥丝抽茧找到对自己有用的东西。好了,废话说了这么多,进入正题吧我开始学习的时候也是从System.out.println("hello world")开始的,我就觉得Java学习也很简单嘛。然后开始接触基本数据类型,我就每天都纠结Byte和bit谁是谁的八倍,我老爱搞混,然后浮点型和整数型还好区别,但这个char和String又是怎么区别的呢?还有为什么String又变成对象类型了?自动拆装箱机制又有什么意义?直到后来我在代码中写到:String year = "2021"; String sjYear = year.replace("7", "6");然后我发现sjYear的值是2016但year的值还是2021不会改变,我就更疑惑了,于是乎我就专门去看了String的源码和技术博客,当真是茅塞顿开,知道了String的巧妙,知道对String对象的任何改变都不影响到原对象,相关的任何change操作都会生成新的对象,它也是基于char[]数组实现的,还顺便终于知道了int等基本数据类型的自动拆装箱,为什么int初始化不能为null,因为它不是对象,也知道为什么要包装类型?这就是一个由果寻因的过程,那么经过这次过程我即搞清楚了问题又增加了信心,而且觉得去看源码也不是大神才能做的。然后后面学习集合数组和map的时候,什么二维数组、三维数组、 、ArrayList 、Vector 、Hashtable 、HashMap 、把我搞的想哭着回家找妈妈,怎么就是学不明白。后来我就从使用场景去初步的学习辨别使用,比如说和ArrayList,快速插入,删除元素,应该使用,如果需要快速随机访问元素,应该使用ArrayList,好我知道这么用,可是为什么呢?因为如果ArrayList删除元素会引起底层数组的向前复制,根据最坏情况,时间复杂度为O(n),而底层链表删除元素只是简单的修改了一下引用地址,时间复杂度为O(1),所以我就理解了最初表层现象两个List表层适用场景,这就是一个知其然并探寻知其所以然的过程。当然从一开始我就知道Java是面向对象的语言,但是看书和视频很长时间还是不得其解,因为这对于一个直接接触编程语言的我过于抽象,还是等我自己写一个根据一定规则生成特殊编号的小功能,根据当前年份,事件类别...去数据库查询无则创建有则+1,最后我完成了,可不到一会再完成一个小功能时我又写了一遍,我好烦,就是刚的东西我为什么又写一遍?对呀,为什么又写一遍呢?就突然明白了为什么要面向对象了?但后来代码写的越来越多又发现了问题,添加一个数据类型而不改动函数使用面向对象合适,但是有时候我想添加函数而不改动数据类型的时候,过程式代码和数据结构较合适,面向对象也不是完全的好。所以呢,这说明什么问题呢?说明开始学习的时候有很多东西我们觉得抽象,又不需要必求甚解了,可以跳过,学着学着自然以前的问题迎刃而解。跌跌撞撞我学完了JavaSE,也就开始学习框架了啊,那Spring是Java绕不过去的门槛,Java95%优秀的开源项目和技术都可以无缝集成到Spring.但我学习Spring的时候很困难,也就是在前面面向对象什么都没搞清楚的情况下就学习了,当时我看着大量的xml文件,和之前截然不同的代码方式导致我学习效率和进度都很慢,差点让我崩溃放弃学习,所以我这个路子是反例,没办法了我当时就手写xml结合视频来强迫自己理解。我tm花了一个月终于捋清了了依赖注入和控制反转的概念后,我觉得摸到了Spring的门槛,在那之后就好多了,因为在继续学习Spring的过程中,自然而然的碰到了几种常见的设计模式,设计模式的代码方式是我熟悉的,当然我也惊异于设计模式的巧妙,而且给我带来的是一种逻辑思维上的学习,所以学习的时候不用着急,前人留下的路线必然是经过大量人去证实是合理的,盲目的贪快最终自食苦果的还是自己。再就是后来ORM框架的使用和学习,hibernate和mybatis都有其忠实的粉丝,而我在使用学习的过程中也发现了两个框架的优点,我觉得如果是跨公司或者跨多个项目组用hibernate能保证项目不会跑偏,而mybatis的灵活配置往往能提高开发速度,其实归根到底是由于它们的着力点不同,一个着力与pojo到数据库的映射,一个着力与pojo到sql的映射,各有优劣,但是归根到底它们都是一种工具而已哪个适合就用哪个,当然你可以对其中哪个感兴趣研究一下它们的底层实现原理和机制,还有像消息队列各种***MQ来加快对前台的响应,dubbo+zookeepr来维护管理service服务也是一样,只要弄清工具的使用场景针对的学习使用就一步步的走就行了。这里值得一提的是,我学习其中一种工具框架的时候就会找相应的论坛或者github上面已经使用它们比较优秀的代码,开始我有问题看别人的解答,后来我慢慢的可以回答一些别人简单的问题,这种成就感会督促我们更进一步的学习,也就是说学习中的互动和交流也很重要。提一下前端吧,当时我学习js+html+css的时候教程一遍刷完我都会但就是自己写不出来页面,陷入了这样的困局,后来还是没办法,从最简单的登陆页面、列表页面和详情页面入手,分别使用bootstrap和easyui去实现,不断的百度谷歌从最简单的知识去了解去调样式调间距,图片的位置,登陆的校验和效果图,几个页面玩了很长时间终于能看了,我突然发现三大基础知识起码我已经可以开始使用了,但是可怕的是发现css好难,框架用多了原生js不太会写了,写的越多发现的问题也越多,但我觉得这是个好事情,当我觉得我无知的时候应该算是已经入门了吧,所以后来去学习使用渲染快的Angularjs,渐变式开发vue.js之后我更是不敢放下原生js的摸索。这里想说的就是懂却不会的时候就是需要大量的练习!这里有个小彩蛋,我以为node.js也是一个前端框架,我就想着去看看,然后就打开了后端新世界的大门,为什么一行代码就可以创建服务器?有空的时候可以了解下node,我相信你会被它的魅力折服。啰啰嗦嗦说了很多,还是找一下关键词:由果寻因、知其然并探寻知其所以然、学会不求甚解、不要贪快、要和外界互动、学会思考框架的用处、大量大量大量的代码练习,而前面六点的每一点都离不开最后一点大量大量大量的代码练习。“少年,你可有剑?”“有”“可否与我一看?”“还在磨”“开锋之日能有何作为?”“可刺苍穹”

3.自学5个月Java找到了9K的工作,我的方式值得大家借鉴

我是去年9月22日才正式学习Java的,因为在国营单位工作了4年,在天津一个月工资只有5000块,而且看不到任何晋升的希望,如果想要往上走,那背后就一定要有关系才行。而且国营单位的气氛是你干的多了,领导觉得你有野心,你干的不多,领导却觉得你这个人不错。我才26周岁,实在的受不了这种工作氛围,情绪已经压制了很多久,一心想着要跳出来,却一直找不到合适的机会。因为身边的朋友有在北京做Java开发的,他工作了四五年的时间,可以在北京拿到3万的月薪,说心里话我是真的羡慕,这远超出了我的认知范围。所以经过朋友的推荐,我开始学习Java,一共学了大概5个多月的时间,今年的3月6号在天津找到了一份Java开发的工作,我包装了一年的工作经验,月薪9K五险一金,这算是成功上岸了。在刚开始学习的时候我考虑过去线下培训班,但是我朋友不建议去,因为他就是培训出来的,他和我说去培训班几乎没作用,你去了之后会发现全程都是靠自己自学,老师上完课就走,不如自己看视频学有效率,如果再有一次机会,我绝对不会花3万块钱去培训。因为朋友是过来人,他的建议我不得不听,而且我在网上查了一下,培训班的口碑似乎都不好,这就让我直接放弃了培训的想法。况且3万的培训费用是我不吃不喝半年的工资,确实有点舍不得。于是我开始自学,因为有朋友是做这行的,所以自己在开始的时候少走了很多弯路,他给了我很好的建议,所以学习Java有个大佬带是尤为重要的。因为做软件研发的都有一个圈子,所以经过了朋友的引荐,他让我加了他们那个圈子的Java技术研讨群。里面大部分都是自学成功的大佬,在整个学习期间,我在他们这里真的是得到了不少的帮助。因为他们每个人都积累了很多资源,所以平时都是相互分享资源,如果公司有内推就业的名额也会相互推荐工作机会。当然里面也有一些还在学习中的人,这都是朋友相互推荐聚到一起的。所以我建议那些还在学习Java的初学者,一定要多结识一些行业内的大佬,可以加一下这个Java交流群,对于一个初学者来说可以获得非常多的帮助,平时有一些问题发在群里,他们中有人工作不忙的时候就会出来解答,效率很高而且每个解答都讲解的非常透彻。我之所以能在5个月左右的时间自学Java就业,确实是得到了这些大佬不少的帮助。知乎营销平台我的学习心得,我认为能不能自学成功的要素有两点。第一点就是自身的问题,虽然想要转行学习Java的人很多,但是非常强烈的想要转行学好的人是小部分。而大部分人只是抱着试试的心态来学习Java,这是完全不可能的。所以能不能学成Java并且就业,最关键的一点就是自己的愿望是否强烈。我是属于非常强烈那种,因为忍受不了现在工作的氛围,以及羡慕朋友在北京可以拿到3万的月薪,这些因素都促使我非常拼命的学。在加上自身可以做到从下班就开始看视频自学,一直学到晚上12点的这股劲,所以才能在5个月的时间内达到就业的水平。第二点就是有大佬带你,如果全程都靠自己摸索是非常难的,对于一个不是本专业的人来说从开始的时候就“无从下手”。更不要说在学习过程中遇到的无数bug问题很难得到解决,因为我们在学习过程中会遇到无数问题,有的时候一个小问题就能困扰我们几个小时的时间,会导致我们的学习效率很低,这种情况出现多了以后,信心就会受到打击,觉得自己不适合学编程,最终放弃。而当有一个大佬去给你解答后,你会很快得到答案,并且能理解为什么要这样做,到底是哪里出现了问题,学习效率会非常高。所以总结就是自身自觉主动学习在加上大佬全程带你,其实学习就是这么简单的事情,无非就是这两个关键的要素,少了其中一个都很难成功。自学Java必须注意的问题:(1)代码规范初学者一定要注意培养自己的代码规范,每行代码必须要注释,我之所以只学了5个月就能拿到9K的薪资,就是因为我代码规范很好。其实一个初学者在开始的时候能培养出好的代码规范很难,这源于在整个学习过程中有大佬带我的原因。(2)交流沟通切记不要认为自己可以摸索自学成功,能达到一定高度的水平,一定离不开很多专业人的指导,所以多认识一些大佬尤为重要,圈子真的可以决定我们可以达到什么水平。如果大家找不到合适的圈子,我强烈建议大家添加下面的Java技术研讨群,多认识几个大佬对于职业生涯有好处。知乎营销平台(3)效率:能快尽量快,如果你已经决定要转行学习Java,就千万别拖泥带水,把大部分的精力都投入进来,如果你是那种三天打鱼两天晒网的情况,我劝你尽早的放弃不要浪费时间,有这个时间去锻炼锻炼身体不好吗?(4)学习心态一定要抱着决心转行的心态来学,自身的意愿强度决定了你是否能转行成功。给自学Java的初学者的学习建议:1.了解如今的市场,都需要掌握哪些主要技术就可以快速就业,目前的企业都需要什么人才,这是你学习的方向和目标。2.系统的学习规划:有一个整体学习大纲,要知道自己每天学习什么,做什么练习进行知识巩固,一个阶段学完后应该完成什么项目实战,进行循序渐进的学习,不可以盲目的瞎学。3.一个大佬的指导:作为一个初学者一定要记得找大佬指导你,即使是花点钱也没关系,只要你能把技术学好就行。自己摸索基本都是弯路,很多人为什么学了一两个月就放弃了,因为他不知道路在哪里,整个人都是迷茫的,自然容易放弃。但如果你有了一个大佬带你,他就会给你做详细的学习计划,给你安排好一切,在整个学习过程中给你解答疑问,你学习起来就会思路清晰,简单效率。 Java主要的学习内容:一、JavaSE基础篇JavaSE就是一种标准版,是Java语言的基础部分,Java衍生出来的各种框架(如Spring系列)各种产品都是基于JavaSE标准,JavaSE是Java向上发展的基础,Java任何高级产品的底层基础都是JavaSE,通俗来讲这是所有孩子的”爹“。JavaSE如果学不好,理解不透彻,后面学习框架时就有如天书一般,所以JavaSE这部分的重要性是不言而喻的,希望各位初学者铭记。主要包含内容:数据类型、基础语法、运算符、流程控制、数组、面向对象、常用类、异常处理、集合、IO流、多线程、反射、注解、解析、网络编程。二、数据库篇数据库是学习Java语言必学的一项内容,常见的数据库就是MySQL和Oracle这两种,作为初学者一般都是学习MySQL为主,一般情况下中小型企业都会选择MySQL数据库,比较大型的互联网公司会选择用Oracle,而学习Oracle相对于MySQL也要复杂一些,建议是主要学习MySQL数据库,Oracle作为了解即可。学习数据库较为简单,基本的操作就是增删改查。三、Web开发Web前端内容:HTML/CSS//(前端页面)注意:Java后端开发可以不用过多关注HTML页面及CSS的处理,但是最起码要会用简单的HTML,是必需要会的,因为Javaweb后端程序员毕竟要接触使用AJAX方式处理数据及显示。当然如果只关注服务器端实现而不考虑任何用户界面,则HTML、CSS、都不用关注,但是完全脱离前端的开发现在虽然也不少,但是绝对不关心前端是不可能,尤其是,但是前端却可以完全不关心服务器后台的任何实现。JavaEE内容:Servlet/JSP虽然现在网上在传JSP很少用了,可能是被一些模板或JS AJAX方式代替了一些,但是我认为还是应该接触一下,万一要用到不会怎么办,而且它是Java EE的动态网页实现标准组件。学习JSP过程也能更好的帮助我们理解web会话的过程,掌握web会话都有哪些我们必需知道的。如果学习Javaweb、JSP都不接触那就相当于学习使用而一点不接触一样,岂不是稀里糊涂。包括开发Javaweb 我们必需知道的概念诸如Web应用上下文,请求对象,响应对象,,Cookie等都是在接触学习JSP和Servelt中体现的,还有一些比较少见的EJB JSF JMS 以及 Java Felix等。一些初学者不清楚这些难免会有误区,尤其是有些较成熟的工程师也这么说,我只能说他们很无知,只是代码机器而已,其实对于应用开发设计也就稀里糊涂,人云亦云罢了。永远没有被淘汰的技术也没有永远流行万能的技术,要看在什么环境和场合应用,符合我需求的技术和工具就是好的,就是对的。四、高级框架1、 核心IOC容器2、Spring boot 在Spring基础上的更全面提升效率的Spring工具3、ORM 框架当今流行使用较多的是Mybatis 和 MP(Mybatis插件),Hibernate是可选性学习的4、模板技术,比较成熟的、Spring Cloud 微服务框架,Spring Cloud提供的全套的分布式系统解决方案。五、工具maven 是构建管理项目的工具,svn 和git是团队协作开发的项目源代码及相关文档资料管理工具,需要学习者初步掌握其应用。像Tomcat,jetty ,resin,JBoss,GlassFish 等都是部署运行Java web应用的服务器。以上就是初学者大概学习的内容,我是尽量站在初学者的角度来说的,没有写得特别复杂,怕初学者看不懂,没有实质性的帮助。所以我尽量用白话把话说的简单一些,给大家罗列出主要学习的Java知识点。Java学习 - 知乎有任何关于Java相关的疑问,随时私聊我。

上述文章了解到关于Java学习八大忌,开始的时候为什么我总是学不好Java?,自学5个月Java找到了9K的工作,我的方式值得大家借鉴?? ,让我们对java学习好不好 有一个直观的认知。我们发现,作为一个优秀的Java程序员是多么的自豪。

温馨提示:为不影响您的学业,来校区前请先电话咨询,方便我校安排相关的专业老师为您解答
  • 热门课程
  • 作者最新文章
  • 在线报名
申请试听课程

只要一个电话
我们免费为您回电

姓名不能为空
手机号格式错误