2

我可以在代码的 main() 方法中将 MessageDigest 作为局部变量调用,但是每当我尝试在类中创建 MessageDigest 的字段变量并尝试在构造函数中对其进行初始化时,它都会引发 NoSuchAlgorithm 异常。

我的直觉是我们不能像那样实例化 MessageDigest 对象。真的吗?

基本上,这就是我所做的。我想将其用作字段变量,而不是局部变量。

4

1 回答 1

1

你是对的。由于该异常被声明为抛出,因此您可以将 MessageDigest 对象初始化为成员变量的唯一方法是通过包含该异常的构造函数,或者包含适当的 try/catch 块的构造函数或初始化程序。否则它不会编译。

于 2015-08-17T11:59:02.453 回答