☰分类导航

Java 编程/面向对象
课程进度 33% · 第4/10章第4/10章 · 标签 1/3
— 1 —

类的定义

Java 是纯粹的面向对象语言,类是对现实事物的抽象。通过封装数据和方法,实现高内聚低耦合的设计。


```java
public class Student {
    private String name;
    private int age;
    private double score;

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

    public String getName() { return name; }
    public void setName(String name) { this.name = name; }

    public void study() {
        System.out.println(name + " 正在学习");
    }
}

// 使用
Student s = new Student("Alice", 20);
s.study();
s.setName("Bob");
```
java
1
public class Student {
2
private String name;
3
private int age;
4
private double score;
5
 
6
public Student(String name, int age) {
7
this.name = name;
8
this.age = age;
9
}
10
 
11
public String getName() { return name; }
12
public void setName(String name) { this.name = name; }
13
 
14
public void study() {
15
System.out.println(name + " 正在学习");
16
}
17
}
18
 
19
// 使用
20
Student s = new Student("Alice", 20);
21
s.study();
22
s.setName("Bob");
— 2 —

封装与访问控制


```java
// 访问修饰符
public class Person {
    public String name;       // 所有类可访问
    protected int age;        // 子类+同包
    String address;           // 默认:同包
    private double salary;    // 仅本类

    // Getter/Setter
    public double getSalary() { return salary; }
    public void setSalary(double s) { salary = s; }

    // 静态成员
    public static int count = 0;
    public static void showCount() {
        System.out.println(count);
    }
}
```
java
1
// 访问修饰符
2
public class Person {
3
public String name; // 所有类可访问
4
protected int age; // 子类+同包
5
String address; // 默认:同包
6
private double salary; // 仅本类
7
 
8
// Getter/Setter
9
public double getSalary() { return salary; }
10
public void setSalary(double s) { salary = s; }
11
 
12
// 静态成员
13
public static int count = 0;
14
public static void showCount() {
15
System.out.println(count);
16
}
17
}

📖封装的核心原则:隐藏内部实现,暴露必要接口。使用 private 保护数据,通过 public 方法提供安全访问