HarmonyOS 鸿蒙Next中try catch(e)的e是否有固定的父类型,父类型是什么?

发布于 1周前 作者 yibo5220 来自 鸿蒙OS

HarmonyOS 鸿蒙Next中try catch(e)的e是否有固定的父类型,父类型是什么?

请问下,try catch(e)中的e的有固定的父类型吗?父类型是什么?

3 回复
e没有固定的父类型,是any类型的

(1)可以自己强转,但这种有class cast exception的风险

e as base.BusinessError;

(2)也可以简单判断

if (e.code != null && e.message != null) {

  // xxxx

}

BusinessError?

在HarmonyOS鸿蒙Next中,try-catch语句块中的异常对象e确实有固定的父类型。这个父类型是Java及其衍生环境(包括HarmonyOS的ArkUI框架中的JavaScript扩展以及可能的Java部分)中广泛使用的Throwable类。

Throwable类是Java及类似环境中所有错误(Error)和异常(Exception)的超类。在HarmonyOS鸿蒙Next的开发中,无论是系统级的异常还是应用级的自定义异常,都需要继承自Throwable或其子类(通常是ExceptionError)。

具体来说,Exception类用于表示应用程序可以处理的异常,而Error类则用于表示JVM(Java虚拟机)或系统级的严重错误,通常这些错误是不可恢复的。

因此,在HarmonyOS鸿蒙Next中,try-catch(e)中的e可以捕获任何继承自Throwable的对象,包括但不限于ExceptionError

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部