13.编写一个学生类Student,定义3个属性 name、age 和id,分别表示学生的姓名、年龄和学号。第一个学生的学号为1,以后每生成一个学生对象,学号增加1。初始化学生对象时,需要提供姓名和年
时间: 2024-12-23 15:20:56 浏览: 20
当然可以。在Java中,你可以创建一个名为`Student`的类,利用构造函数自动递增学号的方式来满足这个需求。以下是简单的实现:
```java
public class Student {
private static int idCounter = 1; // 学号计数器
private String name;
private int age;
private int id;
// 构造函数,自动分配学号
public Student(String name, int age) {
this.name = name;
this.age = age;
this.id = idCounter++;
}
// 定义属性的getter和setter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getId() {
return id;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
", id=" + id +
'}';
}
}
// 使用示例
public class Main {
public static void main(String[] args) {
Student student1 = new Student("张三", 18);
System.out.println(student1); // 输出: Student{name='张三', age=18, id=1}
Student student2 = new Student("李四", 20);
System.out.println(student2); // 输出: Student{name='李四', age=20, id=2}
}
}
```
在这个例子中,每次创建新的`Student`对象时,`idCounter`都会自增,保证每个学生的学号都是唯一的,并且从1开始。
阅读全文