wpf 面试

1 ref 和 out

2 对封装,继承,多态的理解

3 接口和抽象类的区别
 
4 trigger (4种)

5 什么是单例(手写),多线程调用单例时怎么保证唯一(lock)

6 自定义界面控件

7 改变界面控件的值,绑定方式或Dispatcher

8 值类型和引用类型的区别,内存的存储和释放 struct是引用类型吗?

9 委托,委托是类型安全的吗

10 绑定的5种方式

11 按钮点击后时间是个怎么的过程(路由种冒泡或者隧道详解)

12程序崩溃如何定位,空指针或内存泄漏

常用的方案是log4net+自己抓异常。具体要抓些什么异常,要看你的实际需求:
1. AppDomain.CurrentDomain.FirstChanceException事件会在First Chance时触发。保留部分First Chance有助于排查某些复杂的问题。我通常会保存最近十条First Chance异常,程序彻底崩溃时输出到log。
2. AppDomain.CurrentDomain.UnhandledException事件会在未捕获的异常抛出时触发。这个时候你的程序基本上挂掉了,所以要输出到log。
3. 对于WPF程序,Application.Current.DispatcherUnhandledException会在Dispatcher中未捕获的异常抛出时触发。通常这个时候你的程序已经要挂了,也要输出到log。
(作者:hillin 链接:https://www.zhihu.com/question/26113171/answer/32187519 来源:知乎)

Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException);
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
 {
  }

        void Application_ThreadException(object sender, ThreadExceptionEventArgs e)
        {

        }

13 软件上线时如何调测,定位,使用什么工具

Bugly,debug diag工具

 

13 软件上线前如何调测wpf 面试_第1张图片

你可能感兴趣的:(wpf 面试)