俗话说:“十五的月亮十六圆”。那学习是不是也是如此呢?如果把月亮看成是我们的愿望,那十五便是我们所处的“高原期”,坚持迈过这个坎,我相信你的愿望终究会现实的。记得马云曾说:今天很残酷,明天更残酷,后天很美好,但绝大部分人是死在明天晚上,所以每个人不要放弃今天。是的,我们不应该放弃今天,因为每个脚印都值得期待,每一次机会都值得尝试。不扯了,还是步入正题吧!

Java的运行机制:Java源程序经过编译器编译成平台无关的字节码,字节码由虚拟机解释执行,虚拟机将每一条要执行的字节码发送给特定平台的解释器,解释器将其翻译成相应平台上的机器码,然后运行在该平台上,又由于运行时依然保留了解释这样就保证了Java程序能跨平台了。Java是一种介于编译型语言与解释型语言之间的一门强类型的语言,所谓编译型语言,像c/c++等运行时只需编译,无需解释,而且只能在特定运行在特定平台上;而解释型语言就是每次运行时,经过解释器负责翻译成特定平台的机器指令,每次运行时,都需要经过一次解释。所以说Java的跨平台型主要得益于它的虚拟机。

JDK(Java Development Kit )开发工具包 )的安装配置:

安装JDK时,无需安装公共JRE (Java Runtime Environment,由JVM+核心库组成),因为JDK默认包含了JRE;其它步骤直接点击下一步即可。

JDK的配置:1、把JDK的bin目录添加到path环境变量中,这样就可以保证用户无需输入绝对路径,即可使用javac、java两个工具。配置PATH的作用:让操作系统能找到我们所使用的命令,与java本身无关!2、添加系统变量JAVA_HOME,并在JAVA_HOME添加JDK安装路径,比如D:\Program Files\Java\jdk1.5.0,具体要根据jdk1.5的安装路径来定。配置JAVA_HOME变量的作用:JAVA_HOME路径下包括lib,bin,jre等文件夹, 以后配置tomcat,eclipse等java开发软件可能需要依赖此变量。3、添加系统变量CLASSPATH,并在CLASSPATH变量下添加如下路径:%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar (注意前面的“.;”)  配置CLASSPATH变量的作用: 为系统指明java加载类(class or lib)的路径,只有类在classpath中,java命令才能识别。

配置成功的效果如下:

下面以一个著名程序:HelloWorld结束本章内容,然后谈下编译和运行java的两个常用命令javac、java

class  _你好世界
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}

效果如图(其中的HelloWorld.java为java源文件名,这里的点号指的是当前目录,当然你也可以换成其它目录,注意命令参数与文件名之间要有空格,java区分大小写,而源文件不区分大小写,下面两图效果可以看到是一样的):


命令解释:

编译源文件:javac -d [目录] java源文件 用于将生成的二进制文件放在指定目录下。
 运行class文件:java -cp [目录] 类名  指定JVM到哪个目录下去搜索Java类。每个class对应一个类。

如果Java源文件中有public类,该源文件的主文件名必须和public类名相同。
如果Java源文件中没有public类,该源文件的主文件名可以是任意的。

关于java中类的修饰符,后面讲到面向对象的时候我会详细讲解。

好啦,今天就写到这,先把HelloWorld跑起来吧!

结束语:java的常用命令还有很多,具体会在后面陆续讲到。对于编程,个人觉得只要你肯多练,不断去调试和思考其脉络,再去慢慢的研究其细节,我想Java对你来说将不会很难。好啦,今天就写到这,明天开始讲ava的基本类型,内容可能会比较多,但是我会尽量讲的详细一些。

Java学习系列(一)Java的运行机制、JDK的安装配置及常用命令详解的更多相关文章

  1. Hexo系列(三) 常用命令详解

    Hexo 框架可以帮助我们快速创建一个属于自己的博客网站,熟悉 Hexo 框架提供的命令有利于我们管理博客 1.hexo init hexo init 命令用于初始化本地文件夹为网站的根目录 $ he ...

  2. Java学习之旅开篇:运行机制及环境搭建

    在写这篇博客之前,我想对自己进行简单概括:我从事软件开发工作已经三年多了,并且一直在从事.NET相关项目的开发.为什么突然间想学习Java呢?有以下几个原因: 1. 开发程序三年多来,已经对.NET相 ...

  3. redis学习笔记01 — 基本介绍、安装配置及常用命令

    redis--NoSQL的一种 为了解决高并发.高可用.高扩展.大数据存储等一系列问题而产生的数据库解决方案,就是NoSQL NoSQL,非关系型数据库,全名:Not Only Sql,它不能代替关系 ...

  4. java学习系列(一)Java中的IO操作

    Java的IO流是实现输入/输出的基础,它可以方便地实现数据的输入\输出操作,在Java中把不同的输入\输出源抽象为"流",通过流的方式允许Java程序使用相同的方式来访问不同的输 ...

  5. Java学习 时间类 Period类与Duration类 / LocalDate类与Instant类 用法详解

    前言 java 8 中引入的两个与日期相关的新类:Period 和 Duration.两个类看表示时间量或两个日期之间的差,两者之间的差异为:Period基于日期值,而Duration基于时间值.他们 ...

  6. SPSS学习系列之SPSS Statistics导入读取数据(多种格式)(图文详解)

    不多说,直接上干货! SPSS Statistics导入读取数据的步骤: 文件  ->  导入数据 成功! 欢迎大家,加入我的微信公众号:大数据躺过的坑     免费给分享       同时,大 ...

  7. java运行环境jdk的安装和环境变量的配置教程

    jdk的下载与安装 一.官网下载jdk 1.百度搜索jdk,进入官网,如下图所示: 官网下载jdk图1 2.在官网网站中找到合适的版本下载(以最新版本为例),如下图所示: 官网下载jdk图2 官网下载 ...

  8. Android中实现java与PHP服务器(基于新浪云免费云平台)http通信详解

    Android中实现java与PHP服务器(基于新浪云免费云平台)http通信详解 (本文转自: http://blog.csdn.net/yinhaide/article/details/44756 ...

  9. 把java文件打包成.jar (jar命令详解)

    把java文件打包成.jar (jar命令详解) 先打开命令提示符(win2000或在运行框里执行cmd命令,win98为DOS提示符),输入jar Chelp,然后回车(如果你盘上已经有了jdk1. ...

随机推荐

  1. EBS Workfow常用表

    1.Workflow Definition Tables WF_ITEM_TYPES WF_ACTIVITIES WF_MESSAGES WF_ITEM_ATTRIBUTES WF_ACTIVITY_ ...

  2. java开发经验分享(一)

    一. 编码 1. 约束自己,规范编码习惯 充足的代码注释.标准缩进的格式.注意命名规范.参考<开发管理规范> "看上去"专业能促进代码质量.越是难看的代码,在它的演化过 ...

  3. CSS flex让所有灵活的项目都带有相同的长度,忽略它们的内容:

    .flexbox {     display: -webkit-box;     display: -webkit-flex;     display: -ms-flexbox;     displa ...

  4. hdu1023:卡特兰数

    火车进站问题 卡特兰数引入的例子. 卡特兰数递推公式:h(n)=h(n-1)*(4*n-2)/(n+1) 通项公式:h(n)=c(2n,n)/(n+1)... 这题需要高精度,刚好学了一下java.. ...

  5. myBatis学习(9):一级缓存和二级缓存

    正如大多数持久层框架一样,MyBatis同样提供了一级缓存和二级缓存的支持 1. MyBatis一级缓存基于PerpetualCache的HashMap本地缓存,其存储作用域为 Session,默认情 ...

  6. SRM 588 D2 L3:GameInDarknessDiv2,DFS

    题目来源:http://community.topcoder.com/stat?c=problem_statement&pm=12710 采用DFS搜索,第一次写的时候忘了加访问标志,结果状态 ...

  7. sdut2623--The number of steps(概率dp第一弹,求期望)

    The number of steps Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描写叙述 Mary stands in a st ...

  8. [Angular 2] Injecting a Service

    Using Services in Angular 2 is very simple. This lesson covers how to create a simple class as a Ser ...

  9. 随着时间的推移:构造SDK路径错误(An error occurred while automatically activating bundle com.android.ide.eclipse.adt)

    在进行Android应用的开发过程中,有时候在配置SDK路径的时候(Windows->Preferences->Android).会出现例如以下报错:An error occurred w ...

  10. SqlBulkCopy的一个例子

    public bool InsertAll(IList<NewStockLuoPan> list) { DataTable dt = new DataTable(); dt.Columns ...