初识java这个小姑娘(一)
忽然想起这样一个场景:那时我还是小学三年级的一个小学生,上课的铃声响起,文艺委员起头,大家开始胡乱的开始唱歌,“让我们荡起双桨,小船儿推开波浪”,歌声在一片稚气中慢慢停止。我们的语文老师姓曹,是个刚从师范毕业的小姑娘,长相清秀,是个非常认真的老师。曹老师上课的方式便是,总结中心思想,划分段落大意,以及分析那段文字是承上启下,或者转折之类的作用,于是,一篇美文便成了一只待宰的猪牛,场面有些血腥。
直到现在,我才有所理解这种思维本身是没有错的,它是在教给每一个同学分析问题,剖析问题,以及最后解决问题的方法。但是,无论如何,当时我是觉得索然无味。
那么学习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语言的一些简单理解,原创作品,欢迎关注同名微信订阅号:程序员与工匠。
欢迎各位大大扫描下方二维进行关注。
初识java这个小姑娘(一)的更多相关文章
- 初识java这个小姑娘(二)
妙解垃圾回收机制 周一,早高峰. 一段考验一个人耐力.智力.开车技术以及脾气的路. 我把车开进了一个没有红绿灯的丁字路口,然后就没有然后了. 来自三个方向的大车小车开始在不大的一块空间里开始互相斗智斗 ...
- 初识java这个小姑娘(三)
说烂了的面向对象 我要说的面向对象,其实是一个我自己都觉的有点恶心的东西. 它是java语言入门如此初级的一个概念.作为一个老鸟,你可以吐口水给我,我可以把它们擦干,但作为总结还得说一说. 因为对于一 ...
- 初识Java
Java是一种简单的.面向对象的.分布式的.解释的.安全的.可移植的.性能优异的多线程语言.它以极强的安全性.平台无关性.硬件结构无关性.语言简洁.面向对象的特点,在网络编程语言中占据了无可比拟的优势 ...
- SSH 框架学习之初识Java中的Action、Dao、Service、Model-收藏
SSH 框架学习之初识Java中的Action.Dao.Service.Model-----------------------------学到就要查,自己动手动脑!!! 基础知识目前不够,有感性 ...
- Java 面向对象编程——第一章 初识Java
第一章 初识Java 1. 什么是Java? Java是一种简单的.面向对象的.分布式的.解释的.安全的.可移植的.性能优异的多线程语言.它以其强安全性.平台无关性.硬件结构无关性.语言简 ...
- Personal Learning Path of Java——初识Java
初识Java 在我个人看来,Java是一门高大上的面向编程语言,这也是Java吸引我的地方.在自学Java之前,我在学校大概学过了一些C语言的知识,在学校学的那点C语言纯属是拿来打基础用的,大概了解了 ...
- 初识Java作业
初识Java作业 一. 填空题 Java技术按照用途不同分为三大版本,分别是JavaSE. javaEE 和JavaMe Java虚拟机就是一个虚拟的用于执行 .class ...
- Java学习笔记心得——初识Java
初识Java 拿到这本厚厚的<Java学习笔记>,翻开目录:Java平台概论.从JDK到TDE.认识对象.封装.继承与多态...看着这些似懂非懂的术语名词,心里怀着些好奇与担忧,就这样我开 ...
- 初识Java程序,编写简单代码?
Dear All: 初识Java程序,编写简单代码? 首先小编在这里说下我们今天编写Java程序使用的是 eclipse 开发工具! 1.下载eclipse 官网地址:http://www.eclip ...
随机推荐
- 面试时,当你有权提问时,别客气,这是个逆转的好机会(内容摘自Java Web轻量级开发面试教程)
前些天,我在博客园里写了篇文章,如何在面试中介绍自己的项目经验,收获了2千多个点击,这无疑鼓舞了我继续分享的热情,今天我来分享另外一个面试中的甚至可以帮助大家逆转的技巧,本文来是从 java web轻 ...
- VS2013装扩展RazorGenerator
问题:vs2013工具扩展和更新搜索关键字:Razor Generator查找不到,如图 解决:下载网址:https://github.com/RazorGenerator/RazorGenerato ...
- Java多线程Master-Worker模式
Java多线程Master-Worker模式,多适用于需要大量重复工作的场景中. 例如:使用Master-Worker计算0到100所有数字的立方的和 1.Master接收到100个任务,每个任务需要 ...
- JSOUP教程,JSOUP 乱码处理,JSOUP生僻字乱码解决方案
JSOUP乱码情况产生 这几天我用 JSOUP 多线程的方式,爬取了200 多万数据,数据为各地的地名相关.结果有小部分数据,不到 1 万乱码.我先检查了我的编码为UTF-8 ,觉得应该没有问题.代码 ...
- [eclipse相关] eclipse 安装svn插件
最近看到别人带主题的eclipse,非常羡慕,所以也换了一个eclipse,版本是java ee luna 4.4.2,然后得偿所愿有了花花绿绿的代码界面:) 但是差点被svn搞死,~~~~(> ...
- thinkphp碰到的一些小问题
1. 生成的html自动被去掉换行和空格,压缩挤到一起了. 解决: 开启debug即可,在入口文件增加 define("APP_DEBUG",true); 2. 添加mysql的 ...
- [转发]读取txt防止读到乱码--自动根据文件编码进行读取
以下是摘抄 /// <summary> /// 获取文件的编码格式 /// </summary> public class EncodingType { /// <sum ...
- C#中消息的工作流程
C#中的消息被Application类从应用程序消息队列中取出,然后分发到消息对应的窗体,窗体对象的第一个响应函数是对象中的protected override void WndProc(ref Sy ...
- SSM 配合 Mysql 数据库和代码数据源主从分离
大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢 ...
- java的String构造对象的几种方法以及内存运行过程
String类创建对象的方法可以分为以下三种 1.String a = "123"; 2.String b = new String("123"); 3.Str ...