定义一个学生类,学生属性包括姓名、年龄....等,通过封装的形式,当年龄小于0时,提示用户“输入年龄有误!请重新输入。”提交内容:代码+运行截图。 (1)完成有参、无参构造。 (2)提供get、set方法。 (3)打印学生信息。
时间: 2024-10-19 19:11:06 浏览: 8
首先,我会为您展示如何在Java中定义一个名为`Student`的类,并实现您提到的功能:
```java
public class Student {
// 属性
private String name;
private int age;
// 有参构造函数
public Student(String name, int age) {
this.name = name;
if (age >= 0) {
this.age = age;
} else {
throw new IllegalArgumentException("输入年龄有误!请重新输入.");
}
}
// 无参构造函数(方便实例化)
public Student() {
this("", 0);
}
// 提供getter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
// 提供setter方法并检查年龄
public void setAge(int age) {
if (age >= 0) {
this.age = age;
} else {
throw new IllegalArgumentException("输入年龄有误!请重新输入.");
}
}
// 打印学生信息
@Override
public String toString() {
return "姓名:" + name + ", 年龄:" + age;
}
// 测试代码(假设main方法在另一个类中)
public static void main(String[] args) {
try {
Student student = new Student("张三", 18); // 正确年龄
System.out.println(student);
// 错误年龄测试
Student wrongAgeStudent = new Student("李四", -5);
System.out.println(wrongAgeStudent);
} catch (IllegalArgumentException e) {
System.out.println(e.getMessage());
}
}
}
```
阅读全文