Java语言自学导航

         首先要讲的作为编程语言榜单上前茅,而且自己也想通过对比学习Java的方式,来重新理解OBP(面向对象编程)的理念.

一.选择大于努力为什么学习Java? Java可以干吗?

1-Java编程语言在编程语言的编程特性

(1)继承了C++语言面向对象技术的核心,舍弃C++的部分特性,

           Java编程语言的风格十分接近C++语言。继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针,改以引用替换,同时移除原C++与原来运算符重载,也移除多重继承特性,改用接口替换,增加垃圾回收器功能。在Java SE 1.5版本中引入了泛型编程、类型安全的枚举、不定长参数和自动装/拆箱特性。

(2)实现了“一次编写,到处运行”的跨平台特性

          Java语言的第二个特性就是跨平台性,也就是说使用Java语言编写的程序可以在编译后不用经过任何更改,就能在任何硬件设备条件下运行。这个特性经常被称为“一次编译,到处运行”。

           执行Java应用程序必须安装Java Runtime Environment(JRE),JRE内部有一个Java虚拟机(Java Virtual Machine,JVM)以及一些标准的类库(Class Library)。通过JVM才能在电脑系统执行Java应用程序(Java Application),这与.Net Framework的情况一样,所以电脑上没有安装JVM,那么这些程序将不能够执行。

(3)自动垃圾回收(Garbage Collection)

Java语言则不同,上述的情况被自动垃圾收集功能自动处理。对象的创建和放置都是在内存堆栈上面进行的。当一个对象没有任何引用的时候,Java的自动垃圾收集机制就发挥作用,自动删除这个对象所占用的空间,释放内存以避免内存泄漏。

注意程序员不需要修改finalize方法,自动垃圾收集也会发生作用。但是内存泄漏并不是就此避免了,当程序员疏忽大意地忘记解除一个对象不应该有的引用时,内存泄漏仍然不可避免。

不同厂商、不同版本的JVM中的内存垃圾回收机制并不完全一样,通常越新版本的内存回收机制越快,IBM、BEA、SUN等等开发JVM的公司都曾宣称过自己制造出了世界上最快的JVM[来源请求],JVM性能的世界纪录也在不断的被打破并提高。

2-Java语言排行榜的”大哥”地位

最为语言排行榜的”大哥”,无论是在应用还是求职上都是比较hot的,直接上图


3-编程语言的横向对比

(这个后期回针对Java C++ Python C#等对比性讲解)

2-Java的应用方向:

Web开发

         Web开发语言很多,Java是其中之一。Java在开发高访问、高并发、集群化的大型网站方面有很大的优势,例如人人网、去哪儿网、美团等。

Android开发

          Android是全球最大的智能手机操作系统,2014年第三季度Android手机出货量占比达到84%。Android应用的主要开发语言就是Java。

Android从2010年才开始走入大众视野,虽然最近几年发展非常快速,但人才积累却没有跟上,优秀的Android开发工程师仍然存在不小的缺口,这也是导致Android开发人员工资高,难招人的原因。

客户端开发

         Java客户端开发主要面向政府、事业单位和大型企业,如医疗、学校、OA、邮箱、投票、金融、考试、物流、矿山等信息方面的系统。

          但是客户端开发往往不是这些企业的主要业务,而是为主要业务提供辅助,以便企业能够更加高效的运营,因此必然不是企业的主要部门,虽然待遇可能和前面两者差不多,但是前景却不看好,企业没有精心打磨这些产品并推向市场的动力,都是内部员工使用,能用就好。

          以上资料基本是本人网上整理,最近一段时间的”微信”小程序不知道会不会对Andriod的开发有什么影响,还有就是由于信息的时效性,可能会有不同和披露,欢迎来评论和交流.

二.凡事预则立Java学习大纲(学习路线图)

         这个个人认为比较重要的,由于网上的学习资源真的很多,真心的说都不知道怎么选择,尤其网上资源不是很系统,质量好可能有其他的门槛,自己想来自己做一个自学的学习日志,一方面来介绍作为”小白”的我一步步的学习时记录和旅程,另方面,在这个不需要重复制造”轮子”的年代,本人希望自己学习之路可以给后面的人有些启发和帮助,最好是少走一些弯路吧.


该图来自于<<疯狂Java讲义>>(李刚)截图[不知道这个算不算盗图啊],个人而言的话这个路线图规划的路线有些远,但是具有很好的参考价值,同时可以根据个人的实际目的来变化.

个人建议是通过51CTO学院的职业路线图选择Java的学习路线,个人觉得比较好

.

送上连接:http://edu.51cto.com/roadmap/view/id-65.html

个人也打算开始,自己编写一个关于自己符合自己实际情况的Java学习路线图,但是由于时间限制的问题和这个文档必须在尽快赶出来的,后期才能奉上.


三.我思故我在Java个人学习的想法

网上看了不少的文章和学习建议,多是一些前辈的建议,什么新手必备……,入门……,自己写这个的文档的原因,就是想通过自己的学习经历来说明,尽量还原一个真实的学习经历。

写这个目的很简单,记录自己的学习旅程,让看这个文档的学习有些启发;同时也是想锻炼一下,自己写一下技术类博客的想法,自己迟迟没有写的原因是因为自己还不是大大神,有时候,觉得自己没有太多的发言权,同时觉这件事再不做也没有时间做了。

所以这个文章也是在最初很简单的想法中出来的个人的一点想法是坚持的写下去,虽然自己写的不是很好但是我希望在后期的阶段中能够有所进步。


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,111评论 25 709
  • TITLE: 编程语言乱炖 码农最大的烦恼——编程语言太多。不是我不学习,这世界变化快! 有时候还是蛮怀念十几、二...
    码园老农阅读 10,810评论 2 35
  • 我从五月的门前走过 珍爱的钥匙 打不开你锈迹斑驳的心锁 于是 我放六月的思念, 像雨夜枯萎的荷花 痛苦着飘落
    武文峰阅读 1,445评论 0 0
  • 柚子幺幺阅读 1,751评论 0 0
  • 年二十九的大连,如果不是外出走走看看,你是不会感觉到多么激烈的年味儿。商场里,多是来釆购年货的男女老少。像其他城市...
    格小主阅读 1,648评论 0 1

友情链接更多精彩内容