Java小知识: 构造函数可以在Java中引发异常!

1.问题

在Java中,方法会引发异常。构造函数还能抛出异常吗?答案是肯定的。

2.原因和必要的背景

构造函数只是一种特殊的方法。从这个角度来看,它肯定可以完成常规方法可以做到的事情。
在构造函数方法完成之前,可能会创建一些对象并将其分配给静态字段。在这种情况下,尚未创建应创建的对象。因此,您需要注意一致性。

3.引发异常的构造函数的示例

这是引发异常的示例构造函数方法。这是一个不好的例子,正确的方法是捕获异常并处理必要的作业,例如重置已完成的作业。

class FileReader{
	public FileInputStream fis = null;
 
	public FileReader() throws IOException{
		File dir = new File(".");//get current directory
		File fin = new File(dir.getCanonicalPath() + File.separator + "not-existing-file.txt");
		fis = new FileInputStream(fin);
	}
}

在构造函数方法中,如果我们同时打开FileInputStream和FileOutputStream,并且第一个成功,第二个失败,那么在异常处理子句中,您需要关闭重置第一个。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值