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

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. URAL 2038 Minimum Vertex Cover

    2038. Minimum Vertex Cover Time limit: 1.0 secondMemory limit: 64 MB A vertex cover of a graph is a ...

  2. 算法导论(第三版)Exercises4.2(第四章二节)

    4.2-1(计算结果) 18  14 62  66 4.2-2(Strassen算法计算矩阵乘法) void multiplyMatrix(int a[], int b[], int n, int r ...

  3. windows环境下nutch2.x 在eclipse中实现抓取数据存进mysql详细步骤

    nutch2.x 在eclipse中实现抓取数据存进mysql步骤 最近在研究nutch,花了几天时间,也遇到很多问题,最终结果还是成功了,在此记录,并给其他有兴趣的人提供参考,共同进步. 对nutc ...

  4. centerOS安装rkhunter

    rkhunter是专业检测系统是否感染rootkit的一个工具: rkhunter-1.4.2.tar.gz 解压后直接安装: #./installer.sh --layout defualt --i ...

  5. C#获取文件和文件夹大小

    代码如下: /// <summary> /// 获取文件夹大小 /// </summary> /// <param name="dirPath"> ...

  6. keepalived vip漂移基本原理及选举算法

    keepalived可以将多个无状态的单点通过虚拟IP(以下称为VIP)漂移的方式搭建成一个高可用服务,常用组合比如 keepalived+nginx,lvs,haproxy和memcached等.它 ...

  7. 理清fineuploader无刷新上传的一些事

    1.fineuploader是一款不依赖与jquery的异步无刷新上传组件,fineuploader采用ajax方式实现对文件上传,返回值都是以json的格式,对后台服务器操作和前端dom对象一些操作 ...

  8. ashx调用session对象

    1.引入命名空间 using System.Web.SessionState 2.必须实现接口 public class Login : IHttpHandler, IRequiresSessionS ...

  9. Katana概述

    OWIN owin是web services和framework组件之间的抽象.抽象包括两个核心要素: environment dictionary 这个数据结构存储处理HTTP请求必须的状态和相关的 ...

  10. js中window.print()去除页眉页脚

    //jsp打印时去除页眉页页脚 打印前加入下面代码即可 var HKEY_Root,HKEY_Path,HKEY_Key; HKEY_Root="HKEY_CURRENT_USER" ...