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 ...
随机推荐
- div contenteditable 重新编辑时focus光标定位到前面问题解决
<div class="editdiv" id="edit" contenteditable="true">这是添加文字< ...
- C#一般处理程序设置和读取session(session报错“未将对象引用设置到对象的实例”解决)
登陆模块时,用到了session和cookie.在一般处理程序中处理session,一直报错.最后找到问题原因是需要调用 irequiressessionstate接口. 在ashx文件中,设置ses ...
- 【自家测试】2017-12-16 FJOI2016 d1
1. 所有公共子序列问题(allcs.pas/c/cpp)★问题描述:一个给定序列的子序列是在该序列中删去若干元素后得到的序列.确切地说,若给定序列X= x 1 x 2 ... x m ,则另一序列Z ...
- js获取base64格式图片预览上传并用php保存到本地服务器指定文件夹
html: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- 国内有哪些质量高的JAVA社区?
国内有哪些质量高的JAVA社区? 转自:http://www.zhihu.com/question/29836842#answer-13737722 并发编程网 - ifeve.com 强烈推荐 Im ...
- 反编译之jd-gui的安装
1.下载JD-GUI http://jd.benow.ca/ 2.下载的dmg安装一直失败 通过brew(https://brew.sh/index_zh-cn.html)命令安装 brew cas ...
- Mui本地打包笔记(一)使用AndroidStudio运行项目 转载 https://blog.csdn.net/baidu_32377671/article/details/79632411
转载 https://blog.csdn.net/baidu_32377671/article/details/79632411 使用AndroidStudio运行HBuilder本地打包的Mui项目 ...
- shell 的基本理解
shell 事先通过一个变量设定好了多个路径,当用户输入命令时,shell会自动到这些路径(由左向右)以此查找 与命令名称相同的可执行文件 hash 用来保存以前曾经执行过的命令,以哈希表的方式保存, ...
- 立体声耳机接口3F07
仅探讨三段式 剩余的两根,则是开关,插入耳机后,会断开,可以用于耳机和扬声器的切换.老式收音机大多采用这个结构
- Django之模板语言(四) ------>Tags
案例1:单层for循环 # Django 模板语言测试代码 def template_test(request): name_list=["张三","李四",& ...