gpt4 book ai didi

c# - 由其他对象组成的对象在 C# 中失败的优雅方式

转载 作者:太空宇宙 更新时间:2023-11-03 13:03:48 26 4
gpt4 key购买 nike

如果你有一个由一堆其他对象组成的对象,即:

class A{
B b {get;}
C c {get;}
private A(){
b = B.Make();
c = C.Make();
}
}

BC 被设置为在抛出异常时返回 null,有没有比在 A 中大量检查 null 更好的方法 的 null 成员也让它失败了吗?

诚然,我对异常管理的理解很差,但是 BC 不处理它们自己的异常,而是让它们冒泡到 A,从而避免了整个空失败。但是,如果它们是使用独立于 A 的类呢?

最佳答案

通常应该完全避免返回 null,Make() 函数应该抛出异常。如果它们的异常级别太低,则应将它们包裹在自定义异常中或替换为自定义异常。

现在调用者 (A) 可以将 Make() 调用放在 try-catch block 中以再次用他自己的异常替换异常,但他不必这样做,你也不必处理 null-检查。

关于c# - 由其他对象组成的对象在 C# 中失败的优雅方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31498564/

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