笔记
明月千里赴迢遥
这个作者很懒,什么都没留下…
展开
-
抛出异常和ifelse在模块化设计上的区别
我们知道,在功能上,一段短代码try catch 和if else并没有太大区别,取得的效果基本相同。那么,为什么还要花费心思设计异常呢?首先:对于短篇代码来说,靠if else解决意外错误不具备可移植性,遇到相似问题需要重新编码。而自定义异常的可复用性高。其次:对于长篇代码来说,异常能起到终止线程并向上传递的作用,相当于分层架构,降低代码的耦合度。...原创 2022-01-29 21:54:14 · 530 阅读 · 0 评论 -
c#继承类构造函数实际意义
c#的教材一般人看不懂,看懂也难以领会其深意,所以有很多合理的事情因教材的错误引导被人为掩盖比如构造函数从最上层的父类向下依次向扩充类执行,教材是用打印类名来演示的,确实很直观,但是很反人类。因为这只能演示做法,却不能解释原因。事实上 类的继承是为了简化代码,提高复用率,比如我定义一个动物类为抽象类,灵长类继承动物类,人类继承灵长类然后动物类有个变量叫界,构造函数初始化为动物界灵长类有个变量叫目,构造函数初始化为灵长目人类有个变量叫属,构造函数初始化为人属至此,继承的优势已经体现地淋漓尽致:你只原创 2021-10-30 20:42:24 · 144 阅读 · 0 评论 -
数组的映像地址
今天对着这个概念和人讨论了好久,后来才想明白[j1,j2,…,jn]的映像地址即它与[0,0,…,0]的距离加上原点的地址,我们最根本的是它到原点的距离但是这跟几何还不一样,不能直接连线,我们采用分量法解题先求[j1,0,0,…,0]到[0,0, …,0]的距离,易得其值为b2·b3·…·bn·j1,即降维累乘其他维度同理最后累加结束想明白用分量法就很简单,可惜我一开始从整体入的手...原创 2021-10-29 10:37:09 · 140 阅读 · 0 评论