在setAge(int age) 中对年龄进行判断,如果年龄介于1到100直接赋值,否则抛出异常
时间: 2024-05-15 17:15:30 浏览: 33
Java代码实现:
```
public void setAge(int age) throws IllegalArgumentException {
if (age < 1 || age > 100) {
throw new IllegalArgumentException("年龄必须在1到100之间");
}
this.age = age;
}
```
在方法中使用 if 语句判断年龄是否在1到100之间,如果不在范围内,则抛出 IllegalArgumentException 异常,异常信息为“年龄必须在1到100之间”,否则直接将年龄赋值给实例变量 age。注意方法声明中的 throws 关键字表示该方法可能抛出 IllegalArgumentException 异常,调用该方法的代码应该进行异常处理。
相关问题
在setAge(int age) 中对年龄进行判断,如果年龄介于1到100直接赋值,否则抛出异常 在测试类中创建对象并调用setAge(int age)方法,使用try-catch捕获并处理异常
代码如下:
Person.java
```java
public class Person {
private int age;
public void setAge(int age) throws Exception {
if (age >= 1 && age <= 100) {
this.age = age;
} else {
throw new Exception("年龄必须介于1到100之间");
}
}
public int getAge() {
return age;
}
}
```
Test.java
```java
public class Test {
public static void main(String[] args) {
Person person = new Person();
try {
person.setAge(120); // 设置一个不合法的年龄
} catch (Exception e) {
System.out.println("出现异常:" + e.getMessage());
}
System.out.println("年龄:" + person.getAge()); // 输出默认值0
try {
person.setAge(25); // 设置一个合法的年龄
} catch (Exception e) {
System.out.println("出现异常:" + e.getMessage());
}
System.out.println("年龄:" + person.getAge()); // 输出正确的年龄25
}
}
```
输出结果:
```
出现异常:年龄必须介于1到100之间
年龄:0
年龄:25
```
2、使用throw抛出年龄异常 在Person类中的setAge(int+age)+中对年龄进行判断,如果年龄介于1到100直接赋值,否则抛出异常 在测试类中创建对象并调用setAge(int+a
在Person类中的setAge方法中,可以使用throw关键字抛出年龄异常。如果年龄不在1到100之间,就抛出一个自定义的异常对象。
```java
public class Person {
private int age;
public void setAge(int age) throws AgeException {
if (age >= 1 && age <= 100) {
this.age = age;
} else {
throw new AgeException("年龄必须在1到100之间!");
}
}
}
public class AgeException extends Exception {
public AgeException(String message) {
super(message);
}
}
```
在测试类中,可以创建Person对象并调用setAge方法来设置年龄。
```java
public class Test {
public static void main(String[] args) {
Person person = new Person();
try {
person.setAge(120);
} catch (AgeException e) {
System.out.println(e.getMessage());
}
}
}
```
这样,如果年龄超出了1到100的范围,就会抛出AgeException异常,并输出异常信息。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)