基本信息
文件名称:2025年net面试题及答案.docx
文件大小:29.19 KB
总页数:16 页
更新时间:2025-12-01
总字数:约7.8千字
文档摘要

2025年net面试题及答案

问:委托(Delegate)和事件(Event)的核心区别是什么?在实际开发中如何避免事件订阅导致的内存泄漏?

答:委托是类型安全的函数指针,允许将方法作为参数传递;事件是委托的封装,通过add/remove访问器限制外部对委托实例的操作(如只能订阅或取消订阅,不能直接赋值或调用)。核心区别体现在访问权限上:委托实例可在外部直接调用或重置(如delegateInstance=null),而事件仅允许在声明类内部触发(eventInstance?.Invoke()),外部只能通过+=/-=操作订阅或取消。

事件订阅导致内存泄漏的常见场景是:当订阅者(如页面、组件