源本科技 | 码上会

Java 编程基础

2025/12/21
93
0

学习目标

通过本课,你将掌握以下核心内容:

  • 理解 Java 的“一次编写,到处运行”(WORA)特性及其运行机制

  • 搭建 Java 开发环境(JDK、JRE、JVM 的区别与作用)

  • 掌握 Java 基本语法结构(类、主方法、输出语句)

  • 熟悉 Java 中的注释、数据类型、变量、关键字和运算符

  • 能够使用条件控制语句(if、switch)和循环结构(for、while 等)


Java 语言概述

Java 是一种基于类(class-based)的面向对象编程语言(OOP),其设计目标是安全性高可移植性强

核心理念:“Write Once, Run Anywhere”(一次编写,到处运行)

只要设备上安装了 Java 虚拟机(JVM),Java 程序就能在任何操作系统(Windows、macOS、Linux 等)上运行。


Java 开发环境搭建

要运行 Java 程序,需先配置开发环境,主要包括以下三个组件:

组件

全称

作用

JVM

Java Virtual Machine

将 Java 字节码(.class 文件)转换为操作系统能理解的机器码

JRE

Java Runtime Environment

= JVM + 核心类库 + 运行时组件 → 用于运行 Java 程序

JDK

Java Development Kit

= JRE + 编译器(javac)、调试器等开发工具 → 用于开发 Java 程序

提示:开发 Java 应用必须安装 JDK。配置环境变量(如 JAVA_HOMEPATH)是关键步骤


Java 基本语法

每个 Java 程序都由(class)构成,程序入口是 main 方法。

Hello World

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

输出

Hello, World

代码解析

  • public class HelloWorld:定义一个名为 HelloWorld 的公共类(文件名必须与类名一致)

  • public static void main(String[] args):程序的入口点,JVM 从此处开始执行

  • System.out.println(...):向控制台输出一行文本


Java 中的注释

注释是写给程序员看的说明文字,编译器会忽略它们,用于提升代码可读性和可维护性。

三种注释类型

public class CommentsExample {
    public static void main(String[] args) {
        // 单行注释
        System.out.println("Hello"); // 行尾注释

        /*
         * 多行注释
         * 可跨越多行
         */

        /**
         * 文档注释(Javadoc)
         * 用于生成 API 文档
         */
    }
}

Java 数据类型

Java 中的数据类型分为两大类:

基本数据类型

类型

字节数

示例

byte

1

100

short

2

30000

int

4

100000

long

8

10000000000L

float

4

3.14f

double

8

3.14159265359

char

2

'A'(Unicode 字符)

boolean

1 bit

true / false

引用数据类型

  • String(字符串)

  • 数组(如 int[]

  • 类(Class)、接口(Interface)、对象(Object)

  • 包装类(如 Integer, Double

完整示例

public class DataTypesDemo {
    public static void main(String[] args) {
        // 基本类型
        int i = 100;
        double d = 3.14;
        char c = 'A';
        boolean flag = true;

        // 引用类型
        String str = "Hello, Java";
        int[] arr = {1, 2, 3};
        Integer num = Integer.valueOf(50);

        System.out.println("String: " + str);
        for (int x : arr) System.out.print(x + " ");
    }
}

Java 变量

变量是存储数据的容器,包含名称、类型和值

四种变量类型

类型

声明位置

特点

局部变量

方法 / 块内部

仅在该作用域内有效

实例变量

类中、方法外

每个对象拥有独立副本

静态变量

类中,用 static 修饰

所有对象共享同一份

final 变量

任意位置,用 final 修饰

值不可更改(常量)

public class VariablesDemo {
    int instanceVar = 10;           // 实例变量
    static String staticVar = "I am static"; // 静态变量

    public void showVariables() {
        int localVar = 5;           // 局部变量
        System.out.println("Local: " + localVar);
    }

    public static void main(String[] args) {
        VariablesDemo obj = new VariablesDemo();
        obj.showVariables();
        System.out.println("Static via class: " + VariablesDemo.staticVar);
    }
}

Java 关键字

关键字是 Java 预留的特殊单词,不能用作变量名或类名。常见关键字包括:

public, private, protected, static, final, class, new, 
return, if, else, for, while, switch, case, default, 
package, import, extends, implements, try, catch...

Java 共有 53 个关键字(含 2 个保留字 gotoconst


Java 运算符

运算符用于对变量或值进行操作,共 7 大类

类型

示例

算术运算符

+, -, *, /, %

关系运算符

==, !=, >, <, >=, <=

逻辑运算符

&&, `

赋值运算符

=, +=, -=, *=, /=

一元运算符

++, --, +, -, !

三元运算符

condition ? a : b

位运算符

&, `

int a = 10, b = 3;
System.out.println("a + b = " + (a + b));      // 13
System.out.println("a > b ? " + (a > b));      // true
System.out.println("a += 5 → " + (a += 5));    // 15

int max = (a > b) ? a : b;                     // 三元运算
System.out.println("Max = " + max);            // 15

条件控制语句

用于根据条件选择执行路径。

常见结构

  • if

  • if-else

  • if-else if-else

  • switch-case

int num = 10;
if (num > 0) System.out.println("正数");

if (num % 2 == 0) 
    System.out.println("偶数");
else 
    System.out.println("奇数");

int day = 3;
switch (day) {
    case 1: System.out.println("Monday"); break;
    case 2: System.out.println("Tuesday"); break;
    case 3: System.out.println("Wednesday"); break;
    default: System.out.println("其他");
}
正数
偶数
Wednesday

用于重复执行一段代码。

四种循环

循环类型

适用场景

for

已知循环次数

while

条件成立时循环(先判断)

do-while

至少执行一次(后判断)

for-each

遍历数组或集合

// for 循环
for (int i = 1; i <= 3; i++) {
    System.out.println("i = " + i);
}

// while 循环
int j = 1;
while (j <= 3) {
    System.out.println("j = " + j++);
}

// for-each
int[] nums = {10, 20, 30};
for (int n : nums) {
    System.out.println("n = " + n);
}

重点总结

  • Java 是跨平台的面向对象语言,依赖 JVM 实现“一次编写,到处运行”

  • 开发需安装 JDK,运行只需 JRE

  • 所有代码写在类中,main 方法是程序入口

  • 支持基本数据类型(8 种)和引用类型(String、数组、对象等)

  • 变量分局部、实例、静态、final 四类

  • 控制流包括 if/switch(分支)和 for/while(循环)


思考题

  1. 为什么 Java 程序可以在不同操作系统上运行?JVM 在其中起什么作用?

  2. intInteger 有什么区别?什么时候使用包装类?

  3. for 循环和 for-each 循环在遍历数组时各有什么优缺点?