gpt4 book ai didi

Java在构造函数中 try catch

转载 作者:行者123 更新时间:2023-12-01 16:42:30 25 4
gpt4 key购买 nike

我编写了一个返回财政年度的类:

public class Fiscal {

private Calendar calendar;

public FiscalDate(String date) {
try {
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date formattedDate = formatter.parse(date);
this.calendarDate = Calendar.getInstance();
this.calendarDate.setTime(formattedDate);
}
catch (ParseException e) {
System.out.print(e);
}
}
}

我的使用方式如下:

String test = new Fiscal("2020-03-31").display();

一切正常,我只是想知道构造函数中的 try 和 catch 是否有问题?有什么方法可以改进这门课吗?

最佳答案

是的,就像 @Johnny Mopp 在评论中所说的那样,您不应该默默地捕获异常,而是抛出异常并让实现该类的人选择如何处理它。

public FiscalDate(String date) throws ParseException {
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date formattedDate = formatter.parse(date);
calendarDate = Calendar.getInstance();
calendarDate.setTime(formattedDate);
}
try {
FiscalDate date = new FiscalDate("my date string");

// some code that utilizes date
} catch (ParseException exception) {
// darn, something went wrong, time to handle it!
}

关于Java在构造函数中 try catch ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60570449/

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