跳到主要内容AI 辅助 Java 零基础入门与实战教程 | 极客日志JavaAIjava
AI 辅助 Java 零基础入门与实战教程
介绍利用 AI 工具辅助 Java 学习的完整流程。涵盖开发工具选择(IDEA、VS Code)、JDK 环境配置、Java 基础语法(类、对象、变量、方法、运算符、循环、数组)及面向对象编程核心概念(封装、继承、多态、抽象)。通过 AI 生成代码实现计算器、猜数字等实战案例,帮助零基础用户快速掌握 Java 开发技能。
PentesterX26 浏览 
开发者工具
传统模式下学习 Java 需要用到 IntelliJ IDEA 或者 Eclipse,但在 AI 人工智能时代,我们可以借助 AI 快速学习。以下是市面上主流的 Java 开发工具及其优缺点分析:
1. IntelliJ IDEA
- 使用场景:企业级开发,适合复杂项目。
- 优点:
- 强大的代码补全和重构功能。
- 内置对 Spring、Maven、Gradle 等框架的良好支持。
- 高效的调试工具和性能分析器。
- 插件生态系统丰富。
- 缺点:
- 商业版收费(社区版功能有限)。
- 占用内存较大,启动较慢。
2. Eclipse
- 使用场景:广泛应用于企业级和开源项目。
- 优点:
- 免费开源,插件丰富。
- 轻量级配置(基础版本占用资源较少)。
- 对 Java EE 和 Android 开发有良好支持。
- 缺点:
- 用户界面相对老旧。
- 在处理大型项目时性能较差。
- 初学者上手较难。
3. VS Code (Visual Studio Code)
- 使用场景:轻量级开发,适合单文件或中小型项目,也适合企业级项目。
- 优点:
- 轻量级,启动速度快。
- 插件扩展性强(如 Java Extension Pack)。
- 支持多语言开发,适合全栈工程师。
- 缺点:
- 需要手动安装和配置插件。
- 对复杂项目的管理能力不如 IntelliJ IDEA。
4. 总结对比表
| 工具名称 | 适用场景 | 主要优点 | 主要缺点 |
|---|
| IntelliJ IDEA | 复杂项目 | 功能强大,插件丰富 | 占用资源多,商业版收费 |
| Eclipse | 企业级开发 | 免费开源,插件丰富 | 性能一般,上手难度较高 |
| VS Code | 轻量级开发 | 轻量快速,扩展性强 | 需要简单配置一些插件 |
5. 推荐使用
推荐大家使用 IDEA 或者 VS Code。如果无法获取完整版 IDEA,建议使用免费开源的 VS Code 来学习 Java。
一、下载 IDEA 并创建 Java 项目
1. IDEA 的下载和创建 Java 项目
下载安装后可以选择 Start trial 进行 30 天免费试用。
我们最好先在桌面上创建一个空白文件夹。然后打开 IDEA,直接点击 New Project 即可。
选中 Java,项目名称随便取,用英文或者拼音都可以,路径选择桌面新建的文件夹。JDK 部分建议优先使用 IDEA 自带的 JDK,选择最新版即可。
点击 Create,一个最简单的 Java 项目就创建好了。
2. IDEA 汉化和 AI 插件
IDEA 汉化:点击 File -> Settings。
安装 AI 插件(如通义灵码),搜索 tongyi 并安装。
安装完 AI 插件以后,有任何问题都可以问 AI,比如设置字体大小。
3. 编写第一个 Java 文件
在 src 下右键新建 Java 类,类名取 Main(注意 M 大写)。
可以让 AI 生成打印 Hello 的代码,按 Tab 键接受即可。
4. 配置属于自己的 JDK
可以通过 AI 助手查询如何配置 JDK。JDK 发展至今已有多个版本,目前推荐使用 LTS 长期版 JDK 21。
从 Oracle 官方网站或 OpenJDK 下载最新版本的 JDK。
5. 配置 JDK 全局环境变量
配置环境变量的目的是为了在任何位置运行 java 命令。
5-1. 命令行配置
以 Windows 为例,以管理员身份打开 CMD。
setx JAVA_HOME "D:\jdk21"
setx PATH "%PATH%;%JAVA_HOME%\bin"
配置好后重启 CMD 生效,输入 java -version 查看是否配置成功。
5-2. 通过系统环境变量设置
右键'此电脑' -> '属性' -> '高级系统设置' -> '环境变量'。
新建变量 JAVA_HOME,值为 D:\jdk21\。
编辑 PATH,添加 %JAVA_HOME%\bin。
验证设置:打开命令提示符,输入 java -version 和 javac -version。
6. 使用自己的 JDK 再创建一个项目
创建 Java 项目时,选择 JDK 部分使用自己安装的 JDK 21。
二、通过 AI+VSCode 配置 Java 开发者环境
1. VSCode 的下载和配置 AI 插件
自行搜索 VSCode 下载安装。安装好以后先安装汉化插件,重启 VSCode 显示中文界面。
安装 AI 插件叫通义灵码,在插件商店搜 tongyi 并安装。
2. 通义灵码的两种模式
- AI 问答:可以问 AI 各种问题。
- AI 程序员:可以命令 AI 程序员帮我们直接创建项目,编写代码。
3. 安装必备插件
3-1. Java Extension Pack
3-2. Extension Pack for Java Auto Config
3-3. Spring Boot Extension Pack
简化 Spring Boot 应用程序的开发和部署。
4. 创建单个 Java 文件
- 创建项目文件夹,打开文件夹。
- 新建文件命名为
Hello.java。
- 编写 Java 代码:
public class Hello {
public static void main(String[] args) {
System.out.println("Hello from VS Code!");
}
}
5. 编译和运行 Java 文件
方法一:使用终端
javac Hello.java
java Hello
方法二:使用 Run Java
选中 Hello.java,右键点击 Run Java。
三、通过 AI 程序员不写一行代码实现计算器
1. 提示词
打开通义灵码,选中 AI 程序员,输入如下提示词:
你是一个经验丰富的 Java 工程师。请利用 Java 的 GUI 开发一个简单的计算器,要求如下:项目基础包为 com.qcl,请设计合理的项目结构,自动添加代码到 com.qcl 目录文件,请你不要把所有代码写在一个包。要给出每一个类及类中详细完整的代码。并且代码要加上中文注释
2. 运行 AI 生成的代码
四、Java 基础知识
1. 类的学习
2. 对象的学习
对象是类的实例化,每个对象都有自己的状态(属性值)和行为(方法)。
class Car {
String color;
String brand;
void start() {
System.out.println("汽车启动了");
}
}
public class Main {
public static void main(String[] args) {
Car myCar = new Car();
myCar.color = "红色";
myCar.brand = "丰田";
myCar.start();
}
}
3. 注释
注释分单行注释 //、多行注释 /* */ 和文档注释 /** */。
4. 变量
变量就像盒子,用来存放数据。每个盒子都有一个类型,表示它可以装什么类型的东西。
int count = 10;
double price = 3.14;
String name = "张三";
变量存储数据的原理
内存是'房子',变量是'房间钥匙'。基本数据类型变量存的是数据本身,引用类型变量存的是数据的房间编号。
5. 常量
常量就是那些固定不变的东西,用 final 关键字来定义。
final int MAX_SPEED = 300;
final double PI = 3.14159;
6. 常量和变量的区别
| 特性 | 常量 | 变量 |
|---|
| 定义方式 | 使用 final 关键字修饰 | 不使用 final 修饰 |
| 是否可变 | 值一旦赋值后不可更改 | 值可以随时改变 |
| 命名规范 | 通常用大写字母,单词之间用下划线分隔 | 通常用小写字母或驼峰命名法 |
7. 关键字和标识符
- 关键字:Java 语言预定义的保留字,如
class, public, static。
- 标识符:用户自定义的名字,用于命名类、变量、方法等。
8. 数据类型
- 基本数据类型:byte, short, int, long, float, double, char, boolean。
- 引用数据类型:String, Array, Class, Interface, Enum。
9. 方法
修饰符 返回值类型 方法名 (参数列表) {
return 结果;
}
方法重载
public class Calculator {
public int add(int a, int b) {
return a + b;
}
public double add(double a, double b) {
return a + b;
}
}
10. 算术运算符
11. 自增自减运算符
- 前置自增
++x:先加 1 再使用。
- 后置自增
x++:先使用再加 1。
12. 关系运算符
13. 逻辑运算符
- 与
&&:全真为真。
- 或
||:有真为真。
- 非
!:取反。
14. 条件判断
15. 三元运算符
16. switch
int day = 3;
switch (day) {
case 1: System.out.println("星期一"); break;
case 2: System.out.println("星期二"); break;
case 3: System.out.println("星期三"); break;
default: System.out.println("未知的日子");
}
17. for 循环
for (int i = 1; i <= 5; i++) {
System.out.println("当前数字是:" + i);
}
18. while 循环
int i = 1;
while (i <= 5) {
System.out.println("当前数字是:" + i);
i++;
}
19. break 和 continue
break:结束整个循环。
continue:跳过当前循环剩余部分,进入下一次循环。
20. 数组
数组是一个固定大小的盒子,用来装多个相同类型的东西。索引从 0 开始。
int[] numbers = {1, 2, 3, 4, 5};
21. 数组的遍历
方法 1:使用 for 循环
for (int i = 0; i < numbers.length; i++) {
System.out.println("当前数字是:" + numbers[i]);
}
方法 2:增强型 for 循环
for (int number : numbers) {
System.out.println("当前数字是:" + number);
}
五、综合实战案例
1. 猜大小游戏
import java.util.Random;
import java.util.Scanner;
public class GuessNumberGame {
public static void main(String[] args) {
Random random = new Random();
int numberToGuess = random.nextInt(100) + 1;
Scanner scanner = new Scanner(System.in);
int guess;
boolean hasGuessedCorrectly = false;
System.out.println("欢迎来到猜数字游戏!");
System.out.println("我已经想好了一个 1 到 100 之间的数字。");
while (!hasGuessedCorrectly) {
System.out.print("请输入你的猜测: ");
guess = scanner.nextInt();
if (guess < numberToGuess) {
System.out.println("太小了,再试一次!");
} else if (guess > numberToGuess) {
System.out.println("太大了,再试一次!");
} else {
System.out.println("恭喜你,猜对了!正确的数字就是 " + numberToGuess);
hasGuessedCorrectly = true;
}
}
scanner.close();
}
}
2. 生成验证码
import java.util.Random;
public class SMSVerificationCodeGenerator {
public static void main(String[] args) {
String verificationCode = generateVerificationCode();
System.out.println("生成的手机验证码是:" + verificationCode);
}
public static String generateVerificationCode() {
Random random = new Random();
int code = random.nextInt(1000000);
String verificationCode = String.format("%06d", code);
return verificationCode;
}
}
3. 找最大
public class FindMaxNumber {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 8, 5};
int maxNumber = findMax(numbers);
System.out.println("数组中的最大数是:" + maxNumber);
}
public static int findMax(int[] array) {
int max = array[0];
for (int i = 1; i < array.length; i++) {
if (array[i] > max) {
max = array[i];
}
}
return max;
}
}
4. 随机点名
import java.util.Random;
public class RandomRollCall {
public static void main(String[] args) {
String[] students = {"Alice", "Bob", "Charlie", "David", "Eve", "Frank", "Grace", "Hannah", "Ivy", "Jack", "Katherine", "Liam", "Mia", "Noah", "Olivia", "Paul", "Quinn", "Rachel", "Sam", "Tom"};
String selectedStudent = pickRandomStudent(students);
System.out.println("被选中的学生是:" + selectedStudent);
}
public static String pickRandomStudent(String[] students) {
Random random = new Random();
int randomIndex = random.nextInt(students.length);
return students[randomIndex];
}
}
六、面向对象编程
1. 什么是面向对象
面向对象就是把现实世界的事物变成程序里的小东西(对象),让它们自己去干活。
2. 类和对象的区别
- 类(Class):图纸、模板。
- 对象(Object):根据图纸造出来的具体实例。
3. 面向对象编程 - 学生案例
定义 Student 类,创建 stu1, stu2 对象。
class Student {
String name;
int age;
void sayHello() {
System.out.println("大家好,我叫" + name);
}
}
4. 封装
把数据和操作这些数据的方法包装在一起,对外隐藏内部细节。
class Student {
private String name;
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
5. 继承
class Animal {
void eat() {
System.out.println("吃东西");
}
}
class Dog extends Animal {
void bark() {
System.out.println("汪汪叫");
}
}
6. 多态
Animal a1 = new Dog();
a1.makeSound();
7. 抽象
只关注关键特征,忽略细节。使用 abstract 关键字。
abstract class Animal {
abstract void makeSound();
}
8. 构造器
public class Dog {
String name;
public Dog(String name) {
this.name = name;
}
}
9. this 关键字
public class Person {
String name;
public Person(String name) {
this.name = name;
}
}
相关免费在线工具
- Keycode 信息
查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online
- Escape 与 Native 编解码
JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online
- JavaScript / HTML 格式化
使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online
- JavaScript 压缩与混淆
Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online
- RSA密钥对生成器
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
- Mermaid 预览与可视化编辑
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online