likes
comments
collection
share

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

作者站长头像
站长
· 阅读数 22

引言: 大二开学,Java专业课的老师要求学生们写技术文章以总结自行配置Java环境并使用cmd编译Java文件的过程。 哈哈,很早之前就看过刘欣的《对自己狠一点,开始写作吧》,当时读了后,鸡汤入肚,野心勃勃,很想开始经营自己的技术博客,可惜我当时还是太懒了,也就不了了之了。 希望这次老师布置的硬性要求可以成为我技术博客的伊始。


系统:windows10 命令行:cmd java版本:17 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)


第一部分: 介绍

1.1 为什么使用cmd?

  • 直接
  • 快速
  • 易上手
  • 看起来很酷
  • 避免依赖复杂的IDE

1.2 为什么学习Java?

大学必修课,不能不学(bushi).

学习编程而非语言,语言更像是武器,而如数据结构、编译原理才是内功。

如果你对大型企业应用、Android 开发、大数据处理或分布式系统感兴趣,专精 Java 可能是一个不错的选择。

1.2.1 Java vs. C++:

Java 是一种面向对象的编程语言,而 C++ 可以同时支持面向对象和面向过程的编程。
Java 具有内置的内存管理和垃圾回收机制,而 C++ 需要手动管理内存,这使得 Java 更容易学习和使用,也更安全。
C++ 通常用于系统级编程、游戏开发和性能密集型应用,而 Java 更适用于企业级应用、Web 开发和移动应用。

1.2.2 Java vs. Python:

Java 是一种静态类型语言,而 Python 是动态类型语言。这意味着 Java 在编译时执行类型检查,而 Python 在运行时执行。
Python 语法简单,易于学习和阅读,适用于快速原型开发和科学计算。Java 更适合大型应用和高性能要求。
Java 在企业级应用、Android 应用、大数据处理等领域有广泛应用。

1.2.3 Java vs. Go:

Go 是一种静态类型语言,设计用于简化并发编程,具有出色的性能。Java 也支持并发,但 Go 更专注于此。
Go 具有内置的垃圾回收,与 Java 类似,但更轻量级。
Java 生态系统庞大,拥有大量库和框架,适用于各种应用,而 Go 更适合构建分布式系统和网络服务。

1.3 演示cmd指令编译java(基本)

1.3.1. code_clection文件夹是我常用的存放代码的根目录,你如果嫌麻烦也可以直接在C盘上编译Java文件。

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)


1.3.2. windowns10下cmd的一些基本指令的演练。

  • 我这里建立文件夹是为了以后方便管理和查看,如果你没有这方面的需求,可以跳过。

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)


1.3.3. 创建文件并打开。

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)


1.3.4.编写Java文件

public class HelloWorld{
	public static void main(String[] args){
    System.out.println("Hello,World");
    }
}

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)


1.3.5.编译Java文件

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)



第二部分: 准备工作

2.1 彻底删除旧Java配置

2.1.1 为什么(我)要删除Java的环境配置?

在这学期老师要求下载JDK之前,我曾配置过Java环境,所以我的电脑已经可以编译Java文件了,但是文件路径的习惯和现在不太一样,不方便我管理文件。
就像张三有强迫症,物件的摆放很有规矩,但是张三小时候很邋遢,现在张三要去他小时候住的地方找纪念小时候的物品,见到混乱的各种杂物,定然是不爽的。
我并不清楚Java的环境配置,也不理解过去配置环境时混乱的文件路径,不清楚为什么我没有配置JAVA_HOME环境变量却可以编译Java文件。
我选择最暴力的解法:删了重建。

2.1.2 如何彻底删除Java的环境配置?

步骤一 清理用户环境变量:
方法一 鼠标点点点:

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

方法二 cmd命名行进入:
rundll32 sysdm.cpl,EditEnvironmentVariables

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

步骤二 卸载Java:

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

步骤三 验证是否成功删除Java:

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

步骤四 清理注册表:
  • 导航到 HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft 路径,并删除与旧的 Java 版本相关的子项。

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)


2.2 安装和配置JDK环境

步骤一 去 Oracle官网下载

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

步骤二 选择合适的版本下载

进入 Oracle官网后,下拉到如下界面,选择一个合适的版本下载,我这次选了Windows系统下的x64 Installer (.exe),jdk为20版本。 从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

你可能对图片上Windows下的三个版本感到好奇(如果你不感兴趣,请直接跳过。)。他们的区别如下:

  1. x64 Compressed Archive (.zip):这是一个压缩归档文件,包含了 JDK 的所有文件,但没有自动安装程序。你需要手动解压缩文件,并配置环境变量以使用 JDK。这个选项适合高级用户,需要手动配置环境。
  2. x64 Installer (.exe):这是一个自包含的可执行文件安装程序,用于自动安装 JDK。它将 JDK 安装到默认目录,同时配置系统环境变量,以便你可以轻松地在命令提示符中使用 Java 命令。这是最常见的下载选项,适合大多数用户。
  3. x64 MSI Installer (.msi):这也是一个自包含的安装程序,但它使用 Windows Installer 技术进行安装。它与 .exe 安装程序类似,但在一些企业环境中更常见,因为它可以更好地集成到 Windows 管理和部署工具中。
  4. 如果你是普通用户并且只需在个人计算机上安装 Java,选 x64 Installer (.exe) 选项,因为它足够简单。
  5. 如果你是大牛(哈哈,想来大牛也不会来看我的文章),选 x64 Compressed Archive (.zip) 选项,然后手动配置。
  6. 最后,如果你在企业环境中工作,可以选 x64 MSI Installer (.msi)。

小插曲(你没有权限在此位置保存文件....)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

步骤三 双击JDK,下载安装

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

又一个小插曲("以下应用程序正在使用需要由此安装程序更新的文件...")

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

YES!安装完成了!

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

第三部分: 基础知识

3.1 第一个Java程序——HelloWorld

java小程序如下:

public class HelloWorld{
    public static void main(String[] args){
        System.out.println("HelloWorld");
    }
}

基于如上小程序,解释如下:

  1. public class HelloWorld: 这是程序的类定义。在Java中,每个程序都需要包含一个类。类名和文件名应该相同,且每个Java程序都有一个主类(包含main方法)。

  2. public static void main(String[] args): 这是Java程序的主方法。它是程序的入口点,从这里开始执行程序。让我们分解这一行代码:

    • public: 这是一个访问修饰符,表示main方法可以从程序的任何位置访问。
    • static: 这是一个关键字,表示main方法是一个静态方法,不需要创建类的实例即可调用。
    • void: 这是main方法的返回类型。void表示该方法不返回任何值。
    • main: 这是方法的名称,Java程序将从这里开始执行。
    • (String[] args): 这是方法的参数列表,String[] args 表示该方法接受一个字符串数组作为参数。这个参数通常用于传递命令行参数给程序。
  3. { ... }: 大括号用于定义方法的代码块。在main方法中,大括号内包含了要执行的代码。

  4. System.out.println("HelloWorld");: 这是在控制台上打印文本的语句。它使用System.out来引用标准输出流,然后调用println方法来输出文本字符串 "HelloWorld"。println会输出文本并在最后添加换行符,所以每次调用它后,下一个输出会在新行上显示。

这个程序可以在控制台上打印 "HelloWorld"。要运行这个程序,你需要首先将其保存为一个后缀".java" 的文件,本文章推荐你使用cmd编译这个小程序。

3.2 编译和运行Java程序

  • 演示如何使用cmd编译和运行Java程序。
  • 包括错误示范,分析失败的原因和解决方法。

3.2.1 演示

cmd命令下完成HelloWorld.java文件的编译的过程如下

  1. 打开命令提示符:按下Win+R键,输入"cmd",按Enter键。

  2. 导航到Java文件所在的目录:使用cd命令进入文件夹目录。

    cd ..
    cd ..
    d:
    cd D:\A_Shun_Exclusive\life_ofuniversity\code_collection\JAVA\DOS
    

    此处是我的示例。

  3. 新建Java文件:使用cd>命令。

    cd>HelloWorld.java
    
  4. 打开java文件进行编写 :使用notepad命令

    notepad HelloWorld.java
    

    注:notepad命令旨在记事本格式打开文件。 打开文件后敲键盘就行了。

  5. 编译Java文件:使用javac命令。

    javac HelloWorld.java
    

    没反应? 哈哈,没反应就对了,有的话说明你写的代码有问题。 快看看你编写Java文件的文件夹里是不是多了个".class"文件。

  6. 运行Java程序:一旦编译成功,您可以使用java命令来运行编译后的Java程序,如下所示:

    java HelloWorld
    

如果一切顺利,你会在cmd窗口上看到 "HelloWorld" 。

从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解) 从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

第四部分:进步探索cmd+java编译

4.1 输入输出

//SayHello.java
import java.util.Scanner;

public class SayHello {
    public static void main(String[] args) {
        // 创建一个 Scanner 对象来读取用户输入
        Scanner scanner = new Scanner(System.in);

        System.out.print("你的名字是: ");
     
        String name = scanner.nextLine();

        // 关闭 Scanner 对象
        scanner.close();

        System.out.println("你好, " + name + "!");
    }
}


从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

4.2 多文件编译

  • 解释多文件编译的概念和必要性。
  • 提供多文件编译的示例和演示。
//Main.java
public class Main {
    public static void main(String[] args) {
        HelloName hello = new HelloName();
        String message = hello.GetHelloMessage("Fu Xingshun");
        System.out.println(message);
    }
}


//HelloName.java
public class HelloName {
    public String GetHelloMessage(String name) {
        return "Hello, " + name + "!";
    }
}

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

)

4.4 自定义类和头文件

  • 介绍Java中的类和方法。
  • 演示如何创建和使用自定义类。
//Person.java
public class Person {
    private String name;
    private int age;

    // 构造方法
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // 获取姓名
    public String getName() {
        return name;
    }

    // 获取年龄
    public int getAge() {
        return age;
    }

    // 修改年龄
    public void setAge(int age) {
        this.age = age;
    }

    // 自定义方法
    public void introduce() {
        System.out.println("我叫" + name + ",今年" + age + "岁。");
    }
}

//MainSecond.java
public class MainSecond {
    public static void main(String[] args) {
        Person person = new Person("付兴顺", 18);

        String name = person.getName();
        int age = person.getAge();

        System.out.println(name + "的年龄是:" + age);

        person.setAge(19);

        person.introduce();
    }
}

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

4.5 调试

4.5.1 jdb

4.5.1 再配一次环境

我懵逼,本来我下的JDK20版本,但我居然找不到JDK的文件路径,是的,我无论如何也找不到,而且也无法使用jdb命令。然后我就重安了17版本的。

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

4.5.2 演示


//JDBTEST.java

public class JDBTEST {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        int sum = add(a, b);
        System.out.println("Sum: " + sum);
    }

    public static int add(int x, int y) {
        return x + y;
    }
}

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

4.5.1 jshell

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

从零开始:Windows命令提示符 (cmd) 和Java (万字详解)

结束语

==非常感谢您的阅读,也希望能得到您的反馈。==

8. 联系方式

  • QQ:2897795436
  • WeChat:apple6066hcom