java运
❶ java是如何运行的
然后使用java虚拟机(JVM)来运行这个中间代码,就可以得到想要的结果。运行JVM使用的命令是java <your_class>。 在JVM中有JIT(just-in-time) compiler, 是JIT把byte code转换成native machine code。 The JIT compiler translates the Java bytecode into native processor instructions at run-time and caches the native code in memory ring execution.[3] Java虽然是platform independent,但是JVM却不是。对于不同的操作系统和不同的CPU架构,有不同的JVM与之对应。JVM就是这样屏蔽底层硬件差异,使得Java program可以在任何平台上无差别的运行。[3] 2、Java依赖于JVM来运行它的程序。同时Java也依赖于Java Platform。Java Platform是由很多类(classes)构成的,这些类又被组织成为packages,每个package完成一项比较庞大的功能,比如networking, graphics, input/output, user-interface creation, 以及security。[1] 3、由于Java是在JVM上运行的,这并不是一个真实的硬件环境(寄存器啦、内存啦、指令操作啦等等),而仅仅是一个在内存中存在的虚拟的环境。所以,JVM这个软件如果编的不好,就会使得代码运行出错。不同机器上的JVM如果有差异,代码运行时也有可能会出现不同。[1] 4、JRE中包含JVM。JDK又包含JRE。JRE和操作系统进行交互。操作系统会提供各种system calls,通过这些system calls,就可以对硬件进行操作(让硬件来执行指令).[2] 5、Java的语法结构借鉴的是C和C++的。Java的面向对象的特性借鉴的是Smalltalk和Object-C的。
❷ java中的运算
表达式:1-2/5+12 %5的结果是:3
首先计算的是2/5,这个意思是2除以5,取整数部分,这个值是0,然后计算12%5,这个意思是12除以5,取余数部分,这个值是2,最后再计算1-0+2,所以表达式的值是3
❸ java如何运行
public class B{
public static void main(String args[]){
for(String s:args){
System.out.println(s);
}
A x=new A(5);
System.out.println("改变前:x.a="+x.a );
f(x);
System.out.println("改变后:x.a="+x.a );
}
static void f(A y){
y.a=100;
}
}
class A{
int a;
A(int a){
this.a=a;
}
void g(){
a=a+10;
}
}
对于上面的程序,首先在命令提示符中进入源代码所在的文件夹,然后输入javac B.java,再输入java B hello world,那么程序会显示:
hello
world
改变前:x.a=5
改变后:x.a=100
需要注意的是,java 后面跟的是已经编译好的字节码文件的名字,即类名;若要输入参数,则输入的是main()函数的参数。类里面的方法的参数是不能通过外界输入的,而是通过设计程序来输入的
❹ java运行
我把你的程序考下来,运行了一次没有错误.
很有可能是你的环境变量设得有问题.
import java.io.*;
class SuperClass
{
int x;
SuperClass( )
{
x=3;
System.out.println(\"in SuperClass : x=\" +x);
}
void doSomething( )
{
System.out.println(\"in SuperClass.doSomething()\");
}
}
class SubClass extends SuperClass
{
int x;
SubClass( )
{
super( ); //调用父类的构造方法
x=5; //super( ) 要放在方法中的第一句
System.out.println(\"in SubClass :x=\"+x);
}
void doSomething( )
{
super.doSomething( ); //调用父类的方法
System.out.println(\"in SubClass.doSomething()\");
System.out.println(\"super.x=\"+super.x+\" sub.x=\"+x);
}
}
public class Inheritance
{
public static void main(String args[])
{
SubClass subC=new SubClass();
subC.doSomething();
}
}
运行方法:javac Inheritance.java
java Inheritance
❺ Java程序怎么运行
安装jdk,配置环境变量后编译运行。
1,下载jdk,进oracle官网下载jdk安装包,运行安装。
2,配置环境变量:在系统变量里点击新建,变量名填写JAVA_HOME,变量值填写JDK的安装路径,在这里就填写“C:\Program Files\Java\jdk1.8”了;在系统变量里点击新建变量名填写CLASSPATH,变量值写“.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar”。注意不要忘记前面的点和中间的分号;在系统变量里找到Path变量,这是系统自带的,不用新建。双击Path,由于原来的变量值已经存在,故应在已有的变量后加上“;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin”。注意前面的分号。
打开cmd输入java和javac测试是否成功。
3,编写java代码:
public class Test{
public static void main(String[] args) {
System.out.println("hello");
}
}
另存为Test.java。存放在D盘根目录。
3,编译,打开cmd,输入命令:
D:
切换目录到D盘目录,编译java,输入javac Test.java,编译完成后生成Test.class文件。
4,运行,cmd输入命令:java Test。可以看到运行结果:hello。
❻ 怎么运行java程序
比如说保存为"D:\java\test.java",然后转换目录到那里"cd
D:\java",编译这个.java文件"javac
test.java"这个javac的命令一定要记住,这是jdk里面最为常用的之一,是个java的编译器,具体参数你自己研究吧,很多,配合使用会得到意想不到的结果。这时候应该在"D:\java\"目录下面生成了一个test.class文件,这个就是一个二进制文件,就像windows下面常见的exe文件一样,只不过这个二进制文件是java虚拟机的(具体java的运行机制书上都会讲,自己研究吧)。这样就可以运行了,"java
test",java是jdk的另一个最为常用的命令,启动java虚拟机,后面的参数书你的程序编译出来的.class文件,但是千万别再后面加上".class",java命令也还是有很多的参数,还是自己看吧
❼ JAVA可运用于哪些方面 强的后台 测试,运维会用到
其实现实生活中有很多地方应用到了Java,从电子商务网站到Android应用,从科学应用到金融应用比如电子交易系统,从游戏(Minecraft)到桌面应用好比Eclipse,NetBeans以及IntelliJ,从开源的文档到J2ME应用。下面来详细的介绍这些。
1、安卓应用
如果你想弄清楚Java用在什么地方,你离这个目标不是太远。打开你的安卓手机和任何一款App,它们是使用Java语言,基于GoogleAPI(和JDK类似)开发的。数年的安卓支持已经有了很大的提高,并且很多Java程序员已经成为了安卓App开发者。安卓使用不同的Java虚拟机、不同的包,但是代码仍是用Java写的。
2、金融业服务器的应用
在金融服务中Java有很重要的作用。很多银行像建行、中行等很多银行使用Java来开发前台和后台电子交易系统,提供解决方案和确认系统以及数据处理项目等等。
Java大多数用在开发服务器端的应用,几乎不用来开发前端,前端是从一个服务器接收数据,然后处理它并把它发送给其他进程。
3、Java Web应用
Java在电子商务和Web应用领域也是有很多的应用。现在有很多使用Spring MVC、Structs2.0和类似框架开发的RESTful风格的服务。甚至建一个简单的依赖Servlet、JSP和Structs开发的Web应用在各种各样的政府项目中很受欢迎。政府的很多部门如卫生局、保险部门、国防部等部门都有他们使用Java开发的Web应用。
4、软件工具
很多有用的软件和开发工具是用Java开发的,例如Eclipse、interllij、Netbeans IDE。我认为大多数使用的桌面应用也是用Java开发的。所以有一段时间,Swing在开发客户端方面非常流行,尤其是在金融行业和投资银行。现在,Java FX正在逐渐受到欢迎,但是仍不能成为Swing的替代品,而C#在金融领域内已经几乎代替了Swing。
5、交易应用
第三方用用交易应用,作为更大的金融服务业的一部分也是用Java开发。
流行的交易应用像Murex也是用Java开发的,很多银行都使用它们来连接前后端。
6、J2ME应用
虽然iOS和Android的出现几乎抹杀了J2ME的三星手机方面还是有很大的市场,但是在低端Nokia和使用J2ME的三星手机方面还是有很大的市场。有一段时间,安卓上可用的游戏、软件几乎全部是用MIDP、CLDC,他们是J2ME平台的一部分。J2ME在一些产品如蓝光光盘、机顶盒等等。
WhatsApp很瘦欢迎的一个原因是因为对所有Nokia手机的J2ME平台来说是可用的。
7、嵌入式领域
在嵌入式领域,Java也是有很大应用的。他展示了平台是多么的强大,你仅需130kb就能使用Java技术(在智能卡或者传感器上)。起初,Java是为嵌入式设备而设计的。实际上,这是Java最初“一次编写,到处运行”初衷的一个部分,现在看来获得了成功。
8、大数据技术
Hadoop和其他大数据技术以这样的或那样的方式使用者Java,例如Apache依赖Java的HBse和Accumulo(开源)以及ElasticSearch。但是Java在该领域并不占统治地位,因为有其他技术如MongoDB是用C++开发的。
如果Hadoop或者ElasticSearch发展壮大的话,Java在这个发展的领域有可能获得主要的占有率。
9、高频率的交易领域
Java平台在现在JIT技术的帮助下,他的性能特性已经有了很大的提升,传送性能已经到了C++水平。由于这个原因,Java在开发高性能系统方面还是很受欢迎的,性能与机器语言相比稍差一些,但是你可以安全的折中--轻便。可维护带来更快的速度。对一个缺乏经验的C++程序员来说,只能使应用变得更慢和不可靠。
10、科学应用
现在,对于科学应用来说Java经常作为一个默认的选择,包括自然语言处理。这种现象的主要原因是Java更安全、轻便、已维护,并且与C++和其他语言相比有更好的高级并发工具。
❽ java 的运行机制是什么
简单来说Java程序的运行机制
编写、编译、运行三个步骤。
运行机制 主要是指
编译、运行的过程
1、编译
Java编译器对源文件进行错误排查的过程,编译后将生成后缀名为.class的字节码文件。好让JVM(java虚拟机)里的解释器可以正常读取。
2、运行
三步代码的装入、代码的校验和代码的执行
2.1 、代码的装入
JVM控制解释器中的“类装载器”去读取和装载程序所需的类(class的字节码)。然后解释器开始建立类与类之间的关系。
2.2、代码的校验
字节码校验器进行检查:校验器可发现操作数栈溢出,非法数据类型转化等多种错误。
2.3、代码的执行
执行也分两种情况
即时编译方式:解释器先将字节码编译成机器码,然后再执行该机器码。
解释执行方式:解释器通过每次解释并执行一小段代码来完成Java字节码程 序的所有操作。
通常采用的是第二种方法。由于JVM规格描述具有足够的灵活性,这使得将字节码翻译为机器代码的工作
❾ java的运行环境是什么
Java的平台由两个部分组成:一个是Java Virtual Machine即Java虚拟机,另一部分是Java Application Programming Interface (Java API) 即Java应用程序设计接口,这两部份软件就构成了Java运行的基本的环境。Java API 是一个大的已经做好的软件集合,这个集合里有许多开发时所需要的控件,用来辅助开发。Java API和JVM整合在一起处于机器硬件之上。也就是说,Java平台把一个Java应用程序从硬件系统分离开从而很好的保证了程序的独立性。为了更好的适应开发的需要,Java的设计者们为我们提供了三种Java平台:Java 2 Micro Edition (J2ME ), Java 2 Standard Edition (J2SE)和 Java 2 Enterprise Edition (J2EE). 每一个版本都提供了丰富的开发工具箱以适应不同的开发需要。
让我们来具体看看Java平台的核心JVM的具体结构。
为了让编译产生的字节码可以更好的解释与执行,一共把JVM分成了主要的6块:JVM解释器,指令系统,寄存器,栈,存储区,碎片回收区。
JVM解释器就是这个虚拟机的处理字段码的CPU。
JVM指令系统同硬件计算机很相似。一条指令分成操作码和操作数两部分组成。操作码为8位二进制数,操作数可以根据需要而定。操作码是为了说明一条指令的功能,所以JVM可以有多达256种不同的操作指令。
JVM有自己的虚拟寄存器,这样就可以快速的和JVM的解释器进行数据交换。为了功能的需要,JVM设置了常用的4个32位寄存器:pc(程序计数器),optop(操作数栈顶指针),frame(当前执行环境指针),vars(指向当前执行环境中第一个局部变量的指针)。
JVM栈是指令执行的时候数据和信息存储的场所和控制中心,它提供给JVM解释器运算所需要的信息。
JVM存储区就是为了把编译过后的字节码等信息存储起来。
JVM碎片回收是指将那些使用过后的Java类的具体的实例从内存进行回收,这就使得开发人员免去了自己编程控制内存的麻烦和危险。随着JVM的不断升级其碎片回收的技术和算法也更加合理。比较经典的算法有引用计数、复制、标记-清除和标记-整理。在JVM1.4.1版以后产生了一种叫分代收集技术,简单的来说就是利用对象在程序中生存的时间划分成代,以这个为标准进行碎片回收。关于碎片回收将在以后的文章中专门讲解。
❿ 如何运行JAVA
第一步:下载并安装JDK 6.0,安装路劲为: C:\java\jdk1.6 .
第二步:对“我的电脑”按右键,选“属性”,在“系统属性”窗口中选“高级”标签,再按“环境变量”按钮,弹出一个“环境变量”的窗口,在系统变量中新建一个变量,变量名为“JAVA_HOME“,变量值为"C:\java\jdk1.6";如果存在"PATH"变量名,按编辑,在变量值最前面输入"C:\java\jdk1.6\bin;".(注意以分号结尾,没有引号.如果没有"PATH",点击新建一个"PATH"变量名,变量值一样).
第三步:单击Windows xp的“开始”->“运行”,在弹出的运行窗口中输入cmd,按回车,打开一个命令行窗口,输入javac,将会看见一系列javac常用参数选项. 恭喜你java环境安装成功了.
第四步:开始编程(注意先双击打开"我的电脑",在"工具" ->"文件夹选项" -> 点击"查看"选项 ->在"高级设置"中找到"隐藏已知文件类型的扩展名"前面的小勾去掉)。在C盘的根目录中新建一个子目录,名为"JavaTest”,以作为存放 Java源代码的地方。在JavaTest文件夹中,新建文本文档, 把“新建 文本文档.txt”改为"HelloWorld.java"。用记事本打开"HelloWorld.java", 输入:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, world!");
System.out.println("恭喜你成功运行了第一个java应用程序!");
}
}
注意源文件名必须与类名相同,且类修饰符为public,文件名后缀为".java".保存文件.
第五步:在命令行窗口中输入 cd C:\JavaTest,将当前路径转入JavaTest目录中。然后,输入 javac HelloWorld.java,JDK就在JavaTest文件夹中编译生成一个HelloWorld.class的类文件。
第六步:在命令行窗口中输入 java HelloWorld,(注意没有.class后缀)屏幕出现了
Hello world!
恭喜你成功运行了第一个java应用程序!
表示成功了,也就顺利地编译及运行了第一个Java应用程序。