自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 关于使用资源字典时iconfont图标在设计器中显示但是运行时不显示的问题

今天遇到了这个鬼问题,论坛搜索了一遍都说是什么地址不对,但是我很确认我的地址是对的。很正常吧,一点问题也没有,但是一运行就变成这个鬼样子。图标那里项目名称前要加个“/”就好了,淦!

2024-04-24 23:23:00 151

原创 C#——泛型入门

在C#中,泛型无处不在,因为它可以避免成员膨胀或者类型膨胀,又因为其具有良好的正交性继而产生了泛型类型(类/接口/委托/...)和泛型成员(属性/方法/字段/...),泛型也可以做到类型方法的参数推断,我们会通过例子一一了解先来看看什么是类型膨胀请按照注释顺序查看代码: 再来看看什么是成员膨胀 来看看怎么用泛型解决上面的问题注意按照注释顺序查看: 再来看看泛型接口如何使用同样是按照注释顺序查看: 这个例子在声明Student类的时候,我们实现了泛

2022-12-07 14:05:45 691 1

原创 使用反射降低耦合

另外有时候开发商开发的小动物可能还没开发完就放进类库里去了,所以在给他加一个特殊类型,如果觉得小动物还没开发完,就把这个特殊类型附加到小动物上,我就不加载他就可以了。背景:婴儿车有两行按键,第一行是动物,第二行是数字,按了动物再按数字就会播放对应动物的叫声,播放次数取决于按的数字,保留接口让动物按键数量可以被第三方拓展在程序运行本地文件中有一个animals文件夹,可以加载第三方小动物的插件,去调用里面所有小动物类的Voice方法;代码打印出的路径下新建一个Animal文件夹,用来存放后面的.dll文件。

2022-12-02 14:33:27 190

原创 接口学习——3. 接口显式实现以及反射学习

背景:在这个杀手不太冷的电影里面,里昂一面是个暖男,另一面是个冷酷的杀手,这两种性格是同时存在这个人身上的,而且又不能被人一眼看出来是个杀手,以此为背景来看下面的代码。显式实现就是在方法名前加了接口名,表示只有拿一个IKiller类型的变量来引用WarmKiller这个类类型的实例的时候,这个方法才能被调用。反射:给我一个对象,我能在不用New操作符,和不知道给我的对象具体是什么静态类型的情况下,给你创建出来一个同类型的对象。以上就是反射原理,看不懂没关系,实际上使用的时候也不是用这样的,而是用封装好的。

2022-12-02 14:06:31 141

原创 接口学习——2. 接口隔离原则学习

单一职责原则:一个类应该只做一件事或者一组相关的事,如果一个类实现了一个有过多功能的接口,这个类也必然要把接口中所有成员都实现,这个类就会做很多件事,就违反了这个原则。由例一了解了接口隔离原则,但是要注意,在使用接口隔离和单一职责原则的时候,如果玩得过火了就会产生很多很细碎,只有一个方法的接口和类。违反接口隔离原则的情况1。

2022-12-02 13:53:29 140

原创 接口学习——1. 接口与单元测试

例一. 不使用接口实现下面两组数的求和与求平均值对上面两组数据求和或者求平均值的话,在不使用接口的情况下需要写四个函数因为C#语言是强类型的,用来操作整型数组的函数是不能用来操作ArrayList实例的先明确一个概念,接口是供需双方都要遵守的一个契约在本例中,整型数组和ArrayList就是供方,需方是那两个函数,需求是要求传进来的对象能够被迭代即可,因为函数中需要用Foreach。

2022-11-23 15:35:33 1067

原创 抽象类学习以及接口初识

1. 接口和抽象类都是“软件工程产物”2. 具体类-》抽象类-》接口:越来越抽象,内部实现的东西越来越少3. 抽象类是未完全实现逻辑的类(可以有字段和非public成员,他们代表了“具体逻辑”)4.抽象类为复用而生:专门作为类的基础来使用,也具有解耦功能5. 封装确定的,开放不确定的,推迟到合适的子类中去实现6. 接口是完全未实现逻辑的“类”(“纯虚类”;只有函数成员;成员全部public)7. 接口为解耦而生:高内聚,低耦合,方便单元测试。

2022-11-21 09:19:14 95

原创 事件学习——2. 事件的声明(自定义事件)

简单来说,委托是一头猛兽,用的好了帮你咬人,用不好咬你,事件相当于一个笼子,平时把他关进去,用的时候给你个开关可以开笼子和关笼子,开笼子它出去干活,关笼子他就回来,为了保护自己,你只能控制笼子的开关,不能控制它用什么方式咬人。事件需要一个委托类型作为约束,这个约束规定了事件能发送什么样的消息给事件响应者,也规定了事件响应者能收到什么样的事件消息,这就决定了事件响应者的事件处理器必须能跟这个约束匹配上,才能订阅这个事件。委托是事件的底层基础,事件是委托的上层建筑,为了声明事件就得为他选一个委托。

2022-11-15 14:41:59 265

原创 事件学习——1. 事件的认识

刘铁猛老师的事件学习

2022-11-09 11:45:48 1163

原创 委托学习——4. 委托的高级使用

刘铁猛老师的委托学习

2022-11-05 16:24:29 148

原创 委托学习——3. 委托的模板方法和回调函数(间接调用)

刘铁猛老师的委托学习

2022-11-04 11:07:13 273

原创 委托学习——2. 委托的声明(自定义委托)

刘铁猛老师的委托学习,委托的声明

2022-11-04 10:50:36 149

原创 委托学习——1. 常用的Action与Func

刘铁猛老师的委托学习

2022-11-04 10:39:56 180

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除