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

13081913316

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

想了解java基础叫什么吗?想了解什么才是java的基础知识?,学习JAVA需要什么基础,学习JAVA需要什么基础?,学习java需要什么基础,怎样才能学好java基础?记住,平时没人会给你说这些!,我想学习JAVA,需要什么基础,没有基础可以学么,接受白瞟:Java基础核心知识大总结.pdf?? 吗?......本文带你一探究竟。

1.什么才是java的基础知识?

近日里,很多人邀请我回答各种j2ee开发的初级问题,我无一都强调java初学者要先扎实自己的基础知识,那什么才是java的基础知识?又怎么样才算掌握了java的基础知识呢?这个问题还真值得仔细思考。我做j2ee开发已经超过十载,作为过来人,心路历程估计和大家差不多。编码的前几年,很长一段时间觉得java简单,开发实现各种功能都很轻松,代码写起来根本不费劲(主要是因为写的代码都是一些功能业务逻辑)。但同时自己心里明白,自己其实没有什么水平,自己这3,4年以来学懂的东西就那么多,其他人几个月就可以学会,自己的竞争力在哪里?这种矛盾的心理,困扰了我非常长的时间,非常的苦恼!总有一种报国无门无处发力的感觉。这个时期,热衷了使用各种框架,各种api,常以今天学习了某个api,组件,框架的使用就觉得自己学到了东西,设计模式也看过不止一次,但都没有啥感觉。一方面很努力学习,一方面又觉得不踏实,因为例如这个api我知道而你不知道,但我告诉你之后你就知道了,那我比你的优势在哪里呢?苦恼*2过了很长一段这种惶惶不可终日的日子,决定自己要改变,改变的方向就是阅读自己用到的java相关的源代码,看看jdk是如何实现的。就从基本的数据结构看,然后看多线程相关,在学习前台等等。写的代码还是那些代码,代码还是那么简单,但我力求做到知道代码背后的真相,这就是我最开始努力的方向。于是不再把时间都花在追求各种新框架、新API的使用上,每天都花时间在看实现原理上。就这样过了大半年左右,终于不再迷茫,不会在觉得自己只懂api的使用,觉得自己没有那么肤浅了,说脱胎换骨也不为过。那段时间,是我成长最快的时期,也是最充实的一段时光。Talk is cheap,show me the code。举例说明大家会比较有感觉。如学习了hashmap的源代码知道了工作原理之后,使用<Integer, String> map = new HashMap<>();代码还是那个代码,但我已经知道了hashmap背后的东西数据结构是链表的数组(注:后面的版本为了提升性能,已经是改成链表或者树(节点较多)了)思想上是空间换时间的算法构造函数上有容量和负载因子2个参数以及作用决定性能的是key的hashcode是否够快、结果够分散(不分散就会变成链表的性能了),和扩容的开销(什么时候扩容,和负载因子有关)然后写代码的时候,如果知道了最终的容量(尤其是数据量大的时候),我都会指定初始化容量,类似如下List<SomeBean> list = (); Map<Integer, String> map = new HashMap<>((int)(list.size()/0.75));//0.75为默认负载因子如果工作中某个map使用特别多,性能还需要继续优化,我就会考虑从以下方面优化如果key是自己定义的对象,那么hashcode方法是否够快(最少应该缓存保证只计算一次,而且放入之后不能改变,决定hashcode的字段不能改变)? hash的结果是否够分散?可以考虑调小负载因子,花更多的空间来换时间学习源代码的时候,特别有意思,你会强烈感觉到一个词:举一反三!触类旁通!学习api使用的时候,如果你只知道使用不知道原理,很难举一反三,感觉的是死记硬背。但学习了原理之后,知识成体系后,很容易举一反三,学的越多就容易,还是以hashmap为例,我举一个hashmap反三个点。1. 你会知道但凡有数组的数据结构,构造函数都有一个容量的初始化参数(或者说构造函数有初始化容量的可能都是数组的数据结构)。构造函数如下public ArrayList(int ) //不是数组就没有 public HashMap(int ) public (int capacity) 你就会知道,数组扩容很耗性能(数据量大容易oom),尽量指定容量。2. 算法是空间换时间,还有没有其他算法是这种思想的?你最少能找到一个桶排序。3. 数据库的分库分表,思路和hashmap大同小异4. 各种分布式的hash一致性算法,第一步都是创建一个最大的数组(Integer.MAX_VALUE),就是避免了hashmap最耗性能的扩容运算。学习了hashmap之后,你很自然就会去了解其他的map,如TreeMap,(超级有用),HashTable,(算法思路很有意思),等,你会知道set就是用map做的,都不需要学。到了这步,map相关就可以暂告一段落。在学习中,我发现思想上的东西是最重要的,你理解了思想,一下子就豁然开朗了,在也不需要死记硬背了。如学习CAS的时候,大家都知道这是一种指令级的免锁实现。看代码的时候,我一度疑惑为什么会有个while死循环(原谅我天资驽钝) public final int ( ) { int prev, next; do { prev = get(); next = .(prev); } while (!(prev, next)); return prev; }后来从思想上理解,才知道乐观锁的概念,就是很乐观,假设你不会出错,但你要是出错了我就重试有办法给你修复,对应的就是悲观锁,就是很悲观,觉得不锁就会出错,如关键字和。这体现了2种不同截然不同的管理思想。这种思想经常体现在多个系统集成的设计,有些时候如果你用悲观的思想设计,实现起来很麻烦或者无法实现,但如果你用乐观的思想,减少出错条件,然后出错了能解决,代价就会小很多。说了这么多,我想说的就是,j2ee的基础知识就是你做项目中代码背后的东西。提高自己水平的方法很简单,就是把大部分时间去了解实现原理,了解思想,让自己的知识串起来,形成体系。j2ee的知识特别多,学得人想哭,千万不要一开始把时间花在各种框架、组件的使用上,在我看来那是本末倒置。简单来说:先修内功再练招式。我觉得重要的、工作会用得到的知识就是一个请求从前台到后台处理的过程需要用到的东西,最少包括以下点:js,html,css,ajax,ajax跨域,跨站脚本,web缓存,web优化,nginx,apache作用,鉴权方式,cookie,session,servlet,filter,基本数据结构,线程池,线程并发,缓存,io等等,知识点非常多。如你前台用jq,你应该了解他的选择器和ajax是如何实现的(其实去了解就会发现不复杂)?而不是只是会用。后台你用springmvc,你要了解他是如何工作,每一个配置是做什么,为什么?j2ee知识点特别多,每一个都能写很多,我也在不断学习中。具体要写我还真不知道如何下手,我就列举一下我觉得基础的东西(面试的时候问的问题),有简单有难,你觉得偏可能是你没有做过这块的开发或者做得比较浅:map有哪些,特点和使用场景?(只知道hashmap,hashtable是不够的。。。)哪些方面会影响hashmap的性能?线程安全的map有哪些,是如何实现线程安全的(jdk1.8大不同)?锁有哪几种?公平锁,读写锁等如何实现?能加在哪些地方?什么区别?死锁的形成条件?现在很少死锁了,很少问原子数据对象的原理?相关知识,condition如何使用?(很重要的知识点,强烈推荐阅读源码,教科书般)volatile的相关知识(内存屏障,重排)原理和使用?(超级有用的知识点,工作中使用很多,让代码漂亮很多,后面专门开贴写)多个线程同步等待?(,,Semaphore信号量很多语言都有,实际上使用不是很多,线程池就可以实现大部分等待功能)线程池?(种类,重要的方法,这个一般是使用层面,简单)动态代理?反射?内省?(考察知识面)session相关知识?和cookie关系?分布式session实现原理?cookie相关知识?有哪些属性?(有些属性很有用,只是我们很少留意而已!)nginx,apache 实际项目能做哪些?(鉴权,转发,缓存,反向代理等)和tomcat什么关系?最少了解ajax跨域原因?解决方式?(重点知识,做SE避免不了的问题。这里很多知识点。)jsonp原理?后台需要改动吗?(jsonp虽然现在落伍了,但还是会问问)web优化知识点?(常规知识点)前台缓存相关?(200cache,304,ajax缓存,如何实现缓存)一列举就根本停不下来了。。。其他的spring框架的东西也很多,还有jvm的东西,系统集成相关,数据库相关,io做得很少也不懂问,后面再慢慢把我的学习过程和偶得写下来。很多东西我也是了解个大概,就是看看你有没有学习过,不断学习是程序员最重要的特征。我不算高手,只能算一个合格的老程序员。这里只是说了一下自己之前学习的方向和列举了几个学习中的例子,大家见仁见智。帖子也是针对迷茫的初学者有感而发,希望能帮助到大家。最后我总结一下:初学者先广在精,关注代码背后的实现,关注内功修炼,了解实现原理和思想,形成自己完整的技术体系,知识成片之后就容易触类旁通,进步的速度就会越来越快。最后以我在每一个项目组和开发人员聊天都会说的几个例子结尾:“少林功夫里面有功和拳之分,马步功,石锁功是功,蛇拳猴拳是拳,你不可能练会了蛇拳猴拳就能打人,你必须先重点练功。乔峰在聚贤庄用太祖长拳把大家打得落花流水,我们用太祖长拳就只是个广播体操。同样,我们要分清编程里面那些是功那些是拳,代码背后的实现和思想是功,各个框架、api使用是拳。初学者应该大部分时间花在练功上,功到了拳自然就有了,切勿本末倒置。”谢谢大家阅读!开了一个专栏,记录我的学习之路和编程习惯,每周最少一更,欢迎关注:我的学习之路

2.学习JAVA需要什么基础

只要真的要去学,现在就可以。如果是自学的话,麻烦会大一点,最有可能就是遇到不懂就放弃,所以最好有个老师带。JAVA只要你的思路正确,就能够做出来。有人说,要数学好,也有人说,英语要好。事实上,JAVA涉及到的英语单词不多,数学,你只要清楚它的实现原理也就可以了。现在互联网如此发达,百度,谷歌是你最好的老师。怕的是你遇到一点困难就放弃,或者只是一时的兴趣。说了那么多,也就是说要有决心,从最开始学起,基本上的入门书一步一步来。

3.学习JAVA需要什么基础?

不需要什么基础,当然如果有C或C++基础的话学起来会快一点,看书的话,推荐《Head First Java》,书中有很多图片对程序进行说明,所以就算看英文版,也不会觉得很难看懂。还有,以前在网上下了一本电子书叫《良葛格Java JDK 5.0学习笔记》,感觉也挺适合初学者的

4.学习java需要什么基础

基本的英语、较好的理解能力和接受能力。因为一门编程语言就是所有的信息是你自己定义的,你缺什么就定义什么,需要什么就构造什么。语言所提供给你的只是几个关键字,关键字的作用就类似于工具一样。把自己当做上帝,在你写的程序里你就是god,上帝说有光,就有了光 。当你学习java的时候,java不仅仅提供了工具,还提供了许多类,类就是说我自己定义的东西,是属于什么范畴的。

5.怎样才能学好java基础?记住,平时没人会给你说这些!

迅速发展的信息技术时代,互联网也是行业的领军者。而Java这门语言也一直成为电脑语言的领头大哥,而且在市场上这门语言也非常的成熟,这方面的人才也是供不应求。可能大部分人都知道,Java这门语言也是有点难度的,主要在于他的知识点多,每一个知识点都跟前面的所有知识点相关联,前面的学不懂,后面的课程只会越来越困难。可能会导致你还没有入门就放弃了。虽然所有电脑语言的入门第一件事都是,但是其中却存在非常多的熬妙,比如为什么一定要有main方法才能够执行程序,为什么在输出语句里面写了几个字母就能够输出数据来。这些我想你们都没有真正的去了解过,所以从这些细节就可以看出来你是不是真正的学好了Java这门语言。 一、一个系统的学习方案,跟一套完整的教程。现在是互联网时代,不管是书籍还是视频,网络上面的资源是非常的多,但是学习方案每个人都不一样,应该给自己定制一套适合自己的学习方案。这里推荐我觉得写的好的且适合基础入门学习的书籍:1,《Thinking in java 》适合入门建立正确的概念2,《Core java》这本书很贴近实践,更多的API的介绍3,《java入门到精通》4,《java核心编程思想》5,《java编程思想,第四版中文》书是必要的,但是有一到三本就好了,不需要太多,太多了你会看不过来,如果你有更多的时间,那你可以多看几本,不要盲目的去学习,这样不仅达不到效果,还会浪费一大把的时间和金钱。学习过程中要不断的巩固学过的知识,每天把所学的知识点吃透,不断的练习,Java这个行业需要的是你的经验,而经验就是在你不断练习过程中通过程序的报错来积累的。不要害怕写代码的时候出现错误,你要知道,行业里面的大佬,他们也是从你这里过来的,只是他们遇到的问题比你敲的代码的字母量还多。给你看一下我梳理的javase学习路线: 二、掌握学习的方法,这么多自学的人,百分之七八十的人都会放弃,因为他们在盲目的摸索,或者说他们在模仿别人的学习方法。模仿别人没错,但是你也得选对人,不是每个人的学习方法都适合你,而且你跟别人的学习能力都不一样,按照别人的学习方法可能会导致你跟不上或者浪费一部分的时间。其实不管你怎么去学,每天必须给自己一定的压力,把自己的时间安排满,不要让自己闲下来,当你闲下来之后,下一秒钟再去学习就没有这样的激情或者动力,因为当你闲下来之后你就会感觉到自己很疲惫,再去学习就没有多大的效果。 三、每天要对自己学的知识点进行总结,不管是学了多少,一定要记住一个前提,必须学懂。如果你这一个知识点没有学懂就会导致你下一个知识点出现缺漏,然后把自己陷入一个即懂又不懂的僵局。然后再是对自己所学的知识点进行总结,比如今天学了集合,集合中哪些方法是常用的,哪些方法比较难,在这过程中出现了什么问题,如何去解决这些问题的。再然后就对自己今天所学的知识点进行一个综合的检测,检测自己的过程中把不会的或者忘记的再去复习一遍;或者给自己找一个综合一点的题目,把前面所学的知识点包括在里面一起进行检测,这样不仅检测到你今天的知识点,以前的知识点也进行了一个巩固。 四、多去寻找别人的帮助,可能别人的一句话会顶过你几天的知识点,虽然学习是要靠自己,但是想要java学的快学的扎实又高效,外界的帮助是必须的,很多初学者的问题都非常简单,对于别人来说一眼就能看出是什么问题,而你自己看了大半天都找不到自己的问题出现在哪儿。学习要记住的一点就是要脸皮厚,自己解决不了的问题就去寻求别人的帮助;古代有一句话:听君一席话胜读十年书;这句话用在这儿一点都不夸张,因为别人在社会上摸爬滚打这么多年,他们的经验是你无法想象的,你几天能想出来的问题别人一秒钟就能够指出你的问题所存在的问题,而且会把你说得心服口服,甚至有些话你都听不懂。因为什么呢?还不是一个经验的问题,别人把遇到的问题经过多年的经验总结成了自己的一句话,每次在工作的过程中都被这句话提醒到,不能再去范这个错误。其实行业里面的人都会有这个想法,都想炫耀自己学得知识,当你去问他问题的时候,他一定会跟你讲,因为在他眼里看来他就是比你强,然后自己再无私奉献一点知识给你,别人其实一点都不亏,不仅装了X,还把你的问题给解决了。学习Java主要分为四个阶段: 一、JavaSE基础阶段:JavaSE作为Java的基础,非常重要,后面学习的框架的深度就在于你JavaSE的学习程度,基础越好的人对框架的理解完全不一样,因为他们会去了解框架的底层原理,而且还能看懂。这些放在一个JavaSE基础不是很好的人来说很吃力,因为他们看不懂框架的源码,自然就不会真正的知道框架的底层原理。有的人做了一两年的java开发,虽然工资高,但是他们对于JavaSE基础部分的学习是远远不够的,这也关系到他们后面的职业生涯的发展。所以,学习java的人JavaSE才是你真正的起点。可掌握的核心能力: 1,能够掌握DOS系统常用基本命令 2,熟练使用eclipes编写java代码 3,熟练使用java语言的常用对象 4,掌握常用数据结构和算法 5,掌握面向对象编程思想,为以后深入javaee打下坚实基础实战项目:学生管理系统java项目链接: 二、数据库:数据库是开发一个程序中不可缺少的部分,一个程序必须有一个数据库。数据库主要是用来保存数据,保证数据不会错乱,不会随意的改动,更不会使数据消失,保证了数据的完整性。 三、JavaWeb和网页三剑客:JavaWeb基本上是所有的框架的入门,学懂了JavaWeb之后,后面的框架学习也会提升一个档次。网页三剑客就是HTML、JS、CSS;这些也是学习后端必须掌握的知识。java网页开发可掌握的核心能力1,运用常用的网页开发技术设计网页2,掌握WEB系统呼叫管理3,掌握javaWeb开发核心技术4,运用javaWeb核心技术完成简单的功能实现5,掌握javaWeb高级技术,创建更好的Web应用程序项目实战:链接: 提取码:t0x3 四、JavaEE框架:基础框架:SpringMVC、Spring、MyBatis扩展框架:maven、、、、redis、等等代码管理工具:git、svn项目实战:链接: 提取码:xrlp记住,基础学习不要盲目的追求学习速度,要一步步走稳,多去敲代码练习,多积累经验。我是java开发工程师,这些都是我这些年在工作中的一些基本的总结和经验,我是过来人,个人观点,希望把我经历过的,学过的,看到过的分享给你们大家,希望你们在学习中少走弯路,提高学习的效率,少花冤枉钱和时间,这些都是实话,忠言逆耳,希望可以帮助到你,你要知道社会是现实的,当你走向社会的时候,你会发现,没有真本事,社会不是那么好混的。

6.我想学习JAVA,需要什么基础,没有基础可以学么

只要你想学。没有什么事学不会的。要区别开英语和计算机英语的区别。因为变成是基于英语的,所以学会英语会有助于你去记忆代码和阅读帮助文档。当然如果感兴趣,英语不好也没关系。甚至在你学习JAVA的过程中还能帮你练习英语。至于数学,其实要求的就是一个逻辑思维。只要你逻辑思维够强。数学不一定要非常好。数学好的人逻辑思维很强。但是数学不好的人不一定逻辑思维不强。也许只是因为在这上面发挥不出来。总的来说,联系总是有的。但是关键还是看你自己。还是那句话,只要你想学,没有学不会的。

7.接受白瞟:Java基础核心知识大总结.pdf

↓↓↓程序员必备资料全在这里,我给大家都准备好了,免费领取无套路,每天更新↓↓↓程序员资料大全自学Java,如果觉得看《Java编程思想》或者《Core Java》等之类的“圣经”觉得内容太多,一下子吃不透的话,不妨看看这本《Java基础核心总结》的PDF小册子,内容短小精悍,包含了各项Java基础知识的凝练总结。良许已经把资料准备好了,领取方式在这(请按卡片上的文字提示操作哦,很简单)↓↓↓ ……,几乎涵盖了Java语言的各项基础知识,随便截几张图看看吧。良许已经把资料准备好了,领取方式在这(请按卡片上的文字提示操作哦,很简单)↓↓↓

上述文章了解到关于什么才是java的基础知识?,学习JAVA需要什么基础,学习JAVA需要什么基础?,学习java需要什么基础,怎样才能学好java基础?记住,平时没人会给你说这些!,我想学习JAVA,需要什么基础,没有基础可以学么,接受白瞟:Java基础核心知识大总结.pdf?? ,让我们对java基础叫什么 有一个直观的认知。我们发现,作为一个优秀的Java程序员是多么的自豪。

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

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

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