java基础(3)安装好JDK后使用javac.exe编译java文件、java.exe运行编译好的类

简介: 本文介绍了如何在安装JDK后使用`javac.exe`编译Java文件,以及使用`java.exe`运行编译好的类文件。涵盖了JDK的安装、环境变量配置、编写Java程序、使用命令行编译和运行程序的步骤,并提供了解决中文乱码的方法。

首先我们需要下载java工具包JDK

如果已经安装好,可以直接看第二步:

1.安装jdk并配置环境变量:

jdk下载地址:

https://www.oracle.com/

下载好后安装成功,我选择的是默认安装路径,我的是64位的,所有安装到了:

C:\Program Files\Java

在安装的途中可能会让安装jre,这个jre本质再jdk中已经包含,所有无需再次单独安装,
在这里插入图片描述
这是安装好的目录结构,这个时候已经证明我们安装成功了,下面就是配置环境变量,配置环境变量是为了在其他文件夹下我们也能直接访问java程序。
在这里插入图片描述
在这里插入图片描述
直接将我们jdk目录下的bin路径复制上即可。
我们win+r打开我们的cmd;
在这里插入图片描述

2.下面开始正文,使用javac.exe编译java文件、java.exe运行编译好的类

在任意文件夹下建立我们的java文件,名字我们以大写字母开头:
在这里插入图片描述
打开编辑:

//一个类名为TestJava01的类
public class TestJava01{
   
//执行类的入口函数
    public static void main(String[] arg){
   
    //打印语句
            System.out.print("这是我的第一个java文件");
    }
}

这个时候我们就完成了一个java文件的编写。

在打开我们的cmd,我们可以在这个文件的当前文件夹打开,也可以在任意文件夹打开cmd
1.在当前文件夹:使用相对路径即可
在这里插入图片描述
在其他文件夹打开:使用绝对路径:
在这里插入图片描述
同样可以生成.class文件,这个.class文件就是我们的.java文件编译后的文件
如何使用编译好的.class文件呢?适应java 类名

3.运行编译好的class文件:

在这里插入图片描述
虽然我们这里出现了乱码,但是我们可以清楚的看到,我们已经执行成功。

解决中文乱码的方法:
在这里插入图片描述
在编译的时候就设定编码方式。

上述功能中出现的javac、java其实都是exe文件在执行
因为我们已经设置了环境变量,系统会在全局自动找我们输入的关键词。

javac:将java文件编译成.class文件;
java:运行.class文件,运行时不需要输入后缀,因为运行的不是这个class文件还是这个类。

java文件能在各个平台运行原因:jvm—java虚拟机,jvm可以理解为一个中介,将这一套代码运行在不同的操作系统上,在不同操作系统jvm也是不同的,有window的、有linux的等等。

目录
相关文章
|
29天前
|
安全 Java 编译器
JDK 10中的局部变量类型推断:Java编程的简化与革新
JDK 10引入的局部变量类型推断通过`var`关键字简化了代码编写,提高了可读性。编译器根据初始化表达式自动推断变量类型,减少了冗长的类型声明。虽然带来了诸多优点,但也有一些限制,如只能用于局部变量声明,并需立即初始化。这一特性使Java更接近动态类型语言,增强了灵活性和易用性。
105 53
|
2月前
|
Java
让星星⭐月亮告诉你,jdk1.8 Java函数式编程示例:Lambda函数/方法引用/4种内建函数式接口(功能性-/消费型/供给型/断言型)
本示例展示了Java中函数式接口的使用,包括自定义和内置的函数式接口。通过方法引用,实现对字符串操作如转换大写、数值转换等,并演示了Function、Consumer、Supplier及Predicate四种主要内置函数式接口的应用。
28 1
|
2月前
|
Java
Java基础之 JDK8 HashMap 源码分析(中间写出与JDK7的区别)
这篇文章详细分析了Java中HashMap的源码,包括JDK8与JDK7的区别、构造函数、put和get方法的实现,以及位运算法的应用,并讨论了JDK8中的优化,如链表转红黑树的阈值和扩容机制。
32 1
|
3月前
|
Oracle Java 关系型数据库
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
|
3月前
|
安全 Java API
【性能与安全的双重飞跃】JDK 22外部函数与内存API:JNI的继任者,引领Java新潮流!
【9月更文挑战第7天】JDK 22外部函数与内存API的发布,标志着Java在性能与安全性方面实现了双重飞跃。作为JNI的继任者,这一新特性不仅简化了Java与本地代码的交互过程,还提升了程序的性能和安全性。我们有理由相信,在外部函数与内存API的引领下,Java将开启一个全新的编程时代,为开发者们带来更加高效、更加安全的编程体验。让我们共同期待Java在未来的辉煌成就!
72 11
|
3月前
|
监控 Java 大数据
【Java内存管理新突破】JDK 22:细粒度内存管理API,精准控制每一块内存!
【9月更文挑战第9天】虽然目前JDK 22的确切内容尚未公布,但我们可以根据Java语言的发展趋势和社区的需求,预测细粒度内存管理API可能成为未来Java内存管理领域的新突破。这套API将为开发者提供前所未有的内存控制能力,助力Java应用在更多领域发挥更大作用。我们期待JDK 22的发布,期待Java语言在内存管理领域的持续创新和发展。
|
3月前
|
Oracle Java 关系型数据库
【颠覆性升级】JDK 22:超级构造器与区域锁,重塑Java编程的两大基石!
【9月更文挑战第6天】JDK 22的发布标志着Java编程语言在性能和灵活性方面迈出了重要的一步。超级构造器和区域锁这两大基石的引入,不仅简化了代码设计,提高了开发效率,还优化了垃圾收集器的性能,降低了应用延迟。这些改进不仅展示了Oracle在Java生态系统中的持续改进和创新精神,也为广大Java开发者提供了更多的可能性和便利。我们有理由相信,在未来的Java编程中,这些新特性将发挥越来越重要的作用,推动Java技术不断向前发展。
|
3月前
|
Java API 开发者
【Java字节码操控新篇章】JDK 22类文件API预览:解锁Java底层的无限可能!
【9月更文挑战第6天】JDK 22的类文件API为Java开发者们打开了一扇通往Java底层世界的大门。通过这个API,我们可以更加深入地理解Java程序的工作原理,实现更加灵活和强大的功能。虽然目前它还处于预览版阶段,但我们已经可以预见其在未来Java开发中的重要地位。让我们共同期待Java字节码操控新篇章的到来!
|
3月前
|
Java API 开发者
【Java字节码的掌控者】JDK 22类文件API:解锁Java深层次的奥秘,赋能开发者无限可能!
【9月更文挑战第8天】JDK 22类文件API的引入,为Java开发者们打开了一扇通往Java字节码操控新世界的大门。通过这个API,我们可以更加深入地理解Java程序的底层行为,实现更加高效、可靠和创新的Java应用。虽然目前它还处于预览版阶段,但我们已经可以预见其在未来Java开发中的重要地位。让我们共同期待Java字节码操控新篇章的到来,并积极探索类文件API带来的无限可能!
|
3月前
|
Java
安装JDK18没有JRE环境的解决办法
安装JDK18没有JRE环境的解决办法
361 3