Java是如何实现跨平台的
一.Java是如何实现跨平台的
1.我们编写的Java源码,编译后会生成一种 .class 文件,称为字节码文件
2.Java虚拟机JVM就是负责将字节码文件翻译成特定平台下的机器码然后运行。也就是说,只要在不同平台上安装对应的JVM,就可以运行字节码文件,运行我们编写的Java程序。
注意:跨平台的是Java程序,不是JVM。JVM是用C/C++开发的,不同平台下需要安装不同版本的JVM
所以对成千上万的java开发者和java程序来讲,java是跨平台的
二.JRE,JDK, JVM是什么
JVM 就是Java虚拟机,有多个版本,用来支持Java跨平台的
三.安装和配置java环境
1.先下载安装jdk,首先百度搜索jdk下载,去Orcle官网下载,下载完后安装
2.安装完毕后会有jdk,和jre两个文件夹
JDK打开后目录结构如下图所示:
3.配置环境变量,打开windons系统的环境变量设置窗口,win10下是:
打开我的电脑,在空白处右键单击选择“属性”->“高级系统设置”->“环境变量”
然后在用户变量这里新建,变量名为PATH,变量值为javac.exe的路径,我的是D:\code\jdk1.8.0_151\bin,点击保存
打开cmd,输入javac,出现下图说明已经配置成功:
四.编写Java程序并编译
1.在D盘下新建一个文本文件,改后缀名为.java. 比如111.java
2.打开111.java,编辑,输入如下代码:
class Hello
{
public static void main(String[] args)
{
System.out.println("HelloWorld");
};
}
3.打开cmd,进入D盘,输入javac 111.java , 这是编译的命令,javac是编译的意思
4.编译成功后,会在同样目录下生成Hello.class字节码文件
5.启动JVM,并执行字节码文件,语法:java 带有main函数的类名 举例java Hello
6.控制台输出“Hello World”
五.java的基本语法
1.java严格区分大小写
2.一个java源文件中能有多个类,但只能有一个public类,而且源文件名必须与类名相同
3.一个java源文件中有N个java类时,编译后会生成N份字节码,字节码名称与类名一一对应
4.建议:一个源文件中只定义一个类,并修饰为public
参考资料:https://blog.csdn.net/songkai320/article/details/51819046
http://www.open-open.com/lib/view/open1408453806147.html
Java是如何实现跨平台的的更多相关文章
- Java 是如何实现跨平台的?
Java 是如何实现跨平台的? 注意:跨平台的是 Java 程序,而不是 JVM.JVM 是用 C/C++ 开发的,是编译后的机器码,不能跨平台,不同平台下需要安装不同版本的 JVM 答:我们编写的 ...
- Java虚拟机(JVM)以及跨平台原理详细的介绍
相信大家已经了解到Java具有跨平台的特性,可以"一次编译,到处运行",在Windows下编写的程序,无需任何修改就可以在Linux下运行,这是C和C++很难做到的.那么,跨平台是 ...
- java语言为什么能跨平台
参考https://blog.csdn.net/woailuo453786790/article/details/51660015 因为Java程序编译之后的代码不是能被硬件系统直接运行的代码,而是一 ...
- [Java学习] Java虚拟机(JVM)以及跨平台原理
相信大家已经了解到Java具有跨平台的特性,可以“一次编译,到处运行”,在Windows下编写的程序,无需任何修改就可以在Linux下运行,这是C和C++很难做到的. 那么,跨平台是怎样实现的呢?这就 ...
- JAVA虚拟机(JVM)以及跨平台原理(JDK、JRE、JVM)
相信大家已经了解到Java具有跨平台的特性,可以“一次编译,到处运行”,在Windows下编写的程序,无需任何修改就可以在Linux下运行,这是C和C++很难做到的. 那么,跨平台是怎样实现的呢?这就 ...
- Java虚拟机(JVM)以及跨平台原理
相信大家已经了解到Java具有跨平台的特性,可以"一次编译,到处运行",在Windows下编写的程序,无需任何修改就可以在Linux下运行,这是C和C++很难做到的. 那么,跨平台 ...
- 基础02 Java 跨平台原理
1993 , JAVA初衷: 机顶盒 1994 年互联网刚刚兴起,.(高司令\ 高斯林),改造成了面向互联网的计算机语言.java重要特性之 ------- 跨平台(一次编译,到处运行).平台:操作系 ...
- Java笔记1-Java相关概念和如何实现跨平台
一.Java相关概念 1.Java语言的核心特点跨平台面向对象 2.Java的历史版本JDK1.0,JDK1.1,JDK1.2....JDK5.0,JDK6.0,JDK7.0,JDK8.0 注意:JD ...
- 如何编写跨平台的Java代码
欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...
随机推荐
- WJMZBMR打osu! / Easy
WJMZBMR打osu! / Easy 有一个由o,x,?组成的长度为n的序列,?等概率变为o,x,定义序列权值为连续o的长度o的平方之和,询问权值的期望, 解 注意到权值不是简单的累加关系,存在平方 ...
- Django之深入了解路由层
目录 ORM表关系建立 一对一 一对多 多对多 Django 请求生命周期 url 路由层 路由匹配 无名分组 有名分组 反向解析 路由匹配条件无分组的情况的反向解析 无名分组情况的反向解析 有名分组 ...
- Django 补充知识
目录 Django基于配置文件的编程思想 初步实现 大佬实现 跨站请求伪造csrf 什么是csrf? 前端如何解决 ajax解决 csrf相关的装饰器 FBV方式装饰器 CVB方式装饰器 Django ...
- tab切换 -- vue
效果: html: // 按钮<div class="orderTab clearfix" @click="toggle()"> <div c ...
- 《DSP using MATLAB》Problem 8.13
代码: %% ------------------------------------------------------------------------ %% Output Info about ...
- IntelliJ IDEA community 安装教程
jetbrains官网下载 IntelliJ IDEA安装包 https://www.jetbrains.com/idea/download/#section=windows 此处选择社区版的zip文 ...
- How to ping and test for a specific port from Linux or Unix command line
Use telnet command The syntax is:telnet {host} {port}telnet www.cyberciti.biz 80telnet 192.168.2.254 ...
- 搞了一宿,弄完了一个POP3协议
POP3协议和SMTP协议都会了,加上PE文件的读写,APIHOOK,以及远程进程注入,我是不是就可以写个简单点的通过邮件传播的蠕虫病毒了,哈哈哈哈哈哈. 感觉POP3协议挺简单的,比那个该死的SMT ...
- ListCtrl使用指南
http://blog.csdn.net/bqw2008/article/details/2047489 Windows ListCtrl使用技巧1. ListCtrl 风格 LVS_IC ...
- 使用传统javaweb进行文件上传
使用传统文件上传方式 1.配置依赖 <properties> <project.build.sourceEncoding>UTF-8</project.build.sou ...