zoukankan      html  css  js  c++  java
  • java之JDK,Jvm,JRE

    今天开始学习java,首先搞搞清楚这几个东西之间的关系。

    java是可以跨平台的高级语言。高级语言就需要编译,执行。我们写完java源代码之后,第一步要编译。这时候就用到JDK,jdk中的javac命令,将java编译成字节码,也就是二进制码,也就是.class文件,但是这个二进制码不是真正的机器码。.class文件只能运行在jvm(java virtual machine)上,而只有jvm,注意,jvm执行.class文件,是解释执行。也就是解释一行,执行一行,删除一行。所以只有jvm也不能完全执行,还需要解释二进制码的动态链接库lib。这时候,jre(java runtime environment)就产生了,他是jvm和lib的合体。搞清楚这个,我们现在就知道了,java跨平台,其实不是语言跨平台。他只是jvm跨平台,我们在官网上可以看到Windows版本,ios版本,Linux版本的jdk(现在的jdk包含了jre)所以只是每个平台都有一个java虚拟机,我们的代码是跑在虚拟机上的。所以可以跨平台。但是这样就牺牲了效率,这也是牺牲时间换取跨平台吧。

    搞清楚了这个,我们接下来安装java环境。这时就简单了,先从官网下载jdk。这时可以看到有jse,jee,jme,分别是对应标准库,企业库,微型库。我们只需要下载标准库即可,然后安装。安装完成后,配置环境变量,以便操作系统可以找到jdk中的指令。配置完成后,打开cmd,输入java,javac,可以看到相关指令。这时我们就将环境搭建好了。

    搭建好以后,用文本编辑器,编写java源代码,写好后注意将后缀名txt改为java。注意编码问题,否则会出现中文乱码,把操作系统的编码改为gbk,或者控制台输入chcp 936。首先编译源代码,输入 javac xxx.java。这时会在当前文件夹生成xxx.class文件。然后运行,输入java xxx.java这时候会出现运行结果。

    好了,这就是第一天的成果。

  • 相关阅读:
    二叉树同构
    L1-001 Hello World--java
    关于Hanoi的递归分析
    L1-049 天梯赛座位分配
    1001 害死人不偿命的(3n+1)猜想 && 1005 继续(3n+1)猜想
    L1-046 整除光棍
    L1-043 阅览室
    lambda_Consumer接口
    lambda_Supplier接口
    Veu_v-for
  • 原文地址:https://www.cnblogs.com/tomato190/p/12299726.html
Copyright © 2011-2022 走看看