• 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这时候会出现运行结果。

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

  • 相关阅读:
    [RxSwift教程]14、其他操作符:delay、materialize、timeout等
    [RxSwift教程]13、连接操作符:connect、publish、replay、multicast
    Java虚拟机类加载机制及双亲委派模式分析
    面试系列-如何设计一个类
    谈谈 MySQL 的 JSON 数据类型
    Java 多线程编程(2-异步中包含同步)
    还堵在高速路上吗?带你进入Scratch世界带你飞
    SQL Server SSIS相关介绍
    SQL Server开启READ_COMMITTED_SNAPSHOT
    SqlServer中select语句引起的死锁
  • 原文地址:https://www.cnblogs.com/tomato190/p/12299726.html
Copyright © 2020-2023  润新知