HarmonyOS 鸿蒙Next中try catch(e)的e是否有固定的父类型,父类型是什么?
HarmonyOS 鸿蒙Next中try catch(e)的e是否有固定的父类型,父类型是什么?
(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
或其子类(通常是Exception
或Error
)。
具体来说,Exception
类用于表示应用程序可以处理的异常,而Error
类则用于表示JVM(Java虚拟机)或系统级的严重错误,通常这些错误是不可恢复的。
因此,在HarmonyOS鸿蒙Next中,try-catch(e)
中的e
可以捕获任何继承自Throwable
的对象,包括但不限于Exception
和Error
。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html