Java 面向对象指南.md
$ cat java 面向对象指南.md

Java 面向对象指南

先了解 Java 与面向对象

Java 是一门纯面向对象的语言,程序通过“类”和“对象”建模现实世界。

OOP 四大特性:

  1. 封装:隐藏数据,用 private + getter/setter
  2. 继承:子类复用父类属性和方法(extends
  3. 多态:同一方法不同行为(方法重写)
  4. 抽象:定义通用结构(abstract

掌握 OOP,就掌握了 Java 的核心思维。

一个学生管理系统

// 抽象类:人(体现“抽象”和“封装”)
abstract class Person {
    protected String name;
    
    public Person(String name) {
        this.name = name;
    }
    
    // 抽象方法
    public abstract void study();
}

// 子类:学生(体现“继承”和“多态”)
class Student extends Person {
    private int grade;

    public Student(String name, int grade) {
        super(name);
        this.grade = grade;
    }

    // 重写抽象方法(体现“多态”)
    @Override
    public void study() {
        System.out.println(name + " 正在学习,年级:" + grade);
    }

    // Getter(体现“封装”)
    public int getGrade() { return grade; }
}

// 主程序
public class StudentDemo {
    public static void main(String[] args) {
        // 创建学生对象
        Student s1 = new Student("小明", 3);
        Student s2 = new Student("小红", 4);

        // 调用方法(多态)
        s1.study(); // 输出:小明 正在学习,年级:3
        s2.study(); // 输出:小红 正在学习,年级:4

        // 简单管理
        System.out.println("\n📋 学生列表:");
        Student[] students = {s1, s2};
        for (Student s : students) {
            System.out.println("学生: " + s.name + ", 年级: " + s.getGrade());
        }
    }
}