gpt4 book ai didi

java - 在java中初始化类时如何检查用户输入错误

转载 作者:搜寻专家 更新时间:2023-11-01 03:04:36 25 4
gpt4 key购买 nike

在 java 中初始化类时如何检查输入错误?我已经包括了一个例子

public class Date {
private int d;
private int m;
private int y;

public Date(int d, int m, int y) {
if(is valid date){
this.d = d;
this.m = m;
this.y = y; //etc
} else {
// ??????
// throw an exception?
}
}
}

最佳答案

我想你可以采用几种方式:
- 你可以简单地抛出一个异常 - 考虑你是否想要使用已检查或未检查的异常

-你可以像 denispyr 建议的那样做。

public class Date {
private int d;
private int m;
private int y;

public static Date createNewDate(int d, int m, int y) throws IllegalArgumentException {
// your checks here

return new Date(int d, int m, int y);
}

private Date(int d, int m, int y) {
this.d = d;
this.m = m;
this.y = y; //etc
}
}

您可以在创建方法中声明异常。

查看这些链接:- Is it good practice to make the constructor throw an exception?- Can constructors throw exceptions in Java?

所以如果第二个环节(构造函数中的资源分配,finalizer 攻击)都没有,我想扔进构造函数也没什么问题。

关于java - 在java中初始化类时如何检查用户输入错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26961055/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com