java项目运行基础

一,java的背景

Java是由Sun Microsystems公司于1995年推出的面向对象程序设计语言和Java平台的总称。它是一款高级编程语言,具有简单性、面向对象、分布式、可移植、安全、鲁棒、可靠、跨平台等特点。Java的设计目标是让程序员“一次编写,处处运行”,即编写的Java程序(后缀名为.java的文件),在任何操作系统上都能运行。这是因为Java程序在执行前会被编译成字节码(后缀名为.class的文件),然后由Java虚拟机(JVM)在目标平台上解释执行,这样就实现了跨平台的特性。

二,java程序运行的条件

1,,jVM

JVM(Java虚拟机):是Java平台的核心组成部分之一,它是一个抽象的计算机,可以执行Java字节码,将字节码翻译成机器语言并执行。JVM提供了一种运行Java程序的平台,它可以在不同的操作系统上安装和运行。
正是因为存在java虚拟机,使得在任何操作系统上都能运行java程序,因此java成为能够跨平台运行的语言。

2,JDK

JDK(Java开发工具包):是Java平台的核心组件之一,它包括了Java编译器、Java虚拟机和Java类库等开发工具。JDK提供了一个开发Java程序所需的完整环境,它可以用来编写、编译、调试和运行Java程序。与JRE相比,JDK还提供了一些额外的工具(如javac编译器、jar命令等),使得开发者能够更方便地进行Java程序的开发。

3,JRE

JRE(Java运行时环境):是Java平台的核心组件之一,它包括了Java虚拟机和Java类库。JRE提供了一个运行Java程序的环境,它包含了Java虚拟机和Java核心类库(java.lang、java.util等),但是不包括开发工具(如编译器和调试器)。

三,java编译器

编写java代码的工具
常用的编译器有:jdk自带的编译器。eclipse携带的编译器,idea集成工具携带的编译器(包含编译器外,还提供了许多其他功能,如代码编辑器、调试器、版本控制工具等)等等
idea自带的java编译器是OpenJDK
jdk自带的编译器是Oracle JDK(Oracle JDK是基于OpenJDK源代码构建的)
因此,在实际开发中,需要注意jdk的版本

  1. jdk自带的java编译器和idea是一样的吗?

JDK自带的Java编译器和IDEA中的编译器本质是一样的,都是用于将Java源代码编译成字节码的工具。然而,它们在实际应用中可能存在一些差异。IDEA是一种集成开发环境(IDE),它除了包含编译器外,还提供了许多其他功能,如代码编辑器、调试器、版本控制工具等。
此外,需要注意的是,IDEA默认情况下使用的JDK是OpenJDK,而不是Oracle JDK。这可能会影响到某些特定功能的使用。同时,IDEA也允许你自定义和配置所使用的JDK版本。
总的来说,尽管JDK自带的Java编译器和IDEA中的编译器在功能上是相同的,但由于IDEA提供了更丰富的开发工具和特性,因此在实际的开发过程中,往往更加倾向于使用IDEA来编写和运行Java程序。

  1. 为什么idea还需要配置jdk,idea自身不可以将java代码编译成class代码吗?

实际上,IDEA自身是可以将Java代码编译成class文件的。然而,为了正常运行和开发,仍需要一个JDK(Java Development Kit)环境。因为JDK包含了运行Java程序所需的工具和库,例如Java虚拟机(JVM)和Java类库等。
此外,值得注意的是,当你在一台没有配置过Java环境的电脑上首次运行IDEA时,它会自动检测并使用机器上已经安装的JDK。IDEA自带的JDK往往是OpenJDK,这是考虑到商业版权问题以及让IDEA能在更多没有配置过Java环境的电脑上运行。
因此,尽管IDEA具备将Java代码编译成class文件的能力,但为了确保其正常运行和提供完整的开发、调试等功能,仍然需要配置JDK。如果你还没有安装JDK,或者想要更换不同版本的JDK,可以查阅相关的教程进行安装和配置。

以上的介绍就到此了,如果你了解了java编译器,java虚拟机,java类库的概念,你就能入门java了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值