忽然想起这样一个场景:那时我还是小学三年级的一个小学生,上课的铃声响起,文艺委员起头,大家开始胡乱的开始唱歌,“让我们荡起双桨,小船儿推开波浪”,歌声在一片稚气中慢慢停止。我们的语文老师姓曹,是个刚从师范毕业的小姑娘,长相清秀,是个非常认真的老师。曹老师上课的方式便是,总结中心思想,划分段落大意,以及分析那段文字是承上启下,或者转折之类的作用,于是,一篇美文便成了一只待宰的猪牛,场面有些血腥。
直到现在,我才有所理解这种思维本身是没有错的,它是在教给每一个同学分析问题,剖析问题,以及最后解决问题的方法。但是,无论如何,当时我是觉得索然无味。
那么学习java之前,我也试图从一个语文老师的视角来分析一下这个问题。作为一个已经有着20多年历史的编程语言来说,为什么要学习它,学习它能给我们带来什么,以及要怎么去从零开始学习一门语言。在科技日新月异的现在,语言也面临着逐步被替代,从辉煌到被人遗忘的可能。
我想一万个人有一万种理解吧。
首先从语言的排名来看,Java长期占据编程语言类排名的前三名。至于统计方法、样本空间和最后计算数据的准确性还有待考证,但是我想至少能说明一些问题。那就是Java依然是活跃在编程语言中的佼佼者。
其次如同金融市场一样,不只当前这家公司的规模和市场非常重要,而且市场预期同样是非常重要的一种思量。这从苹果发布新机的发布会实时影响其股票市场就能够看出,众多的眼睛盯着的是对苹果公司前景的预期。那么java是否依然是被看好的一种语言?我想只是从web开发无可替代和移动互联网端同样占据巨大的份额不难看出,前景依然是可以展望的。
最后,无论哪一种语言,无论哪一种文明,都需要不断进化,不断完善,如果进化失败,那么就很难逃脱被淘汰的命运。历史长河中,多少文明被湮灭,能够继续保留下来并继续发展的文明就是一种说明。虽然Java也经历了公司被收购,但是目前来看,Oracle公司的发展可以说势不可挡。
虽然我曾经深恶痛绝于讲大段大段的道理,但是,就像是企业的愿景一样,看似无用,实际上是重要到无以复加的地步。
1、JAVA的跨平台性
这也是java自己一直在鼓吹的一个卖点。顾名思义,你所书写的java代码首先会被编译成字节码文件,然后在java的虚拟机中运行。
举个很简单的例子。一个只会说汉语的中国人要到世界各国去旅游,那么只要在每一个国家给他找一个既懂汉语,又能够按照这个中国人的要求在这个国家做事的人即可。说汉语的中国人就是java语言,懂汉语的人并且能够按照中国人的意思进行操作的人就是虚拟机,而不同的国家就是不同的操作系统。如此理解起来是否能够直观一些,请各位多提意见。如此来看,java并不关心当前的运行环境,它只是在虚拟机中运行的。通过虚拟机,它就可以在当前的任何操作系统进行工作。
2、JDK-JRE-JVM
JDK(JavaDevelopment Kit):Java开发工具,包含开发Java程序的所有工具,如javac和java等,JDK里包含JRE。
JRE(JavaRuntime Environment):Java运行环境,如果要运行Java程序,就需要JRE的支持,JRE里包含JVM。
JVM是Java语言的运行环境就是一个java模拟机
所以在开发的过程中我们只需要安装JDK就行了,对于新版本的JDK我们在配置环境变量的时候,可以不用再去配置classpath,JRE会自动搜索当前路径下的jar包,并自动加载dt.jar和tools.jar。直接配置path就可以了。
这是我对java语言的一些简单理解,原创作品,欢迎关注同名微信订阅号:程序员与工匠。
欢迎各位大大扫描下方二维进行关注。