.Net知识记录(1)

8 篇文章 0 订阅

1.WPF冒泡事件和隧道事件

冒泡事件:
是WPF路由事件中最为常见,它表示事件从源元素扩散(传播)到可视树,直到它被处理或到达根元素。这样您就可以针对源元素的上方层级对象处理事件。

隧道事件:
采用另一种方式,从根元素开始,向下遍历元素树,直到被处理或到达事件的源元素。这样上游元素就可以在事件到达源元素之前先行截取并进行处理。根据命名惯例,隧道事件带有前缀 Preview(例如 PreviewMouseDown)。

2.跨线程访问问题

  1. 使用BackgroundWorker组件 RunWorkerCompleted返回执行元素更新 
  2. delegate和Invoke、BeginInvoke从其它线程调用控件
  3. Action<string> actionDelegate = (x) => { this.label2.Text = x.ToString(); }; this.label2.Invoke(actionDelegate, str);
  4. 多线程对共同资源的访问,往往会造成数据的混乱和不可预料的结果,因此一般需要加锁访问进行互斥访问。可以用“Lock”来提供代码的互斥访问、可以用“Monitor”来提供变量的互斥访问

3.面向对象的三个特征封装、继承、多态

封装 被定义为"把一个或多个项目封闭在一个物理的或者逻辑的包中"。在面向对象程序设计方法论中,封装是为了防止对实现细节的访问。

抽象和封装是面向对象程序设计的相关特性。抽象允许相关信息可视化,封装则使开发者实现所需级别的抽象。一个类可以派生自多个类或接口,这意味着它可以从多个基类或接口继承数据和函数。

继承允许我们根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易。同时也有利于重用代码和节省开发时间。

多态:同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性

overload:重载、override:重写、virtual :虚方法、abstract:抽象方法以及隐藏方法

4.委托跟事件的区别

委托可以把一个方法代入另一个方法,相当于指向函数的指针,换句话说,委托相当于一个函数指针,而事件就相当于保存委托的数组。事件是基于委托的,为委托提供一个订阅或发布的机制。事件是一种特殊的委托,调用事件和委托是一样的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值