摘要: 阅读全文
posted @ 2024-01-14 17:40 猿锋博客 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2024-01-14 17:04 猿锋博客 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 封装:1、隐藏内部细节实现信息,暴露外部接口,提供稳定的抽象。保证安全 2、封装的代码,能够被重复使用。复用性继承:1、复用父类代码; 2、对父类实现了扩展。扩展性。多态:对已有实现进行扩展。继承是实现多态的一种手段。扩展性。 对方法来说有重载,重写等方式 对类来说,实现接口,继承基类等方式 对模块 阅读全文
posted @ 2024-01-14 16:51 猿锋博客 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2024-01-14 15:59 猿锋博客 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2024-01-14 15:14 猿锋博客 阅读(1) 评论(0) 推荐(0) 编辑
摘要: namespace 协变逆变 { class Program { static void Main(string[] args) { //问题1:为什么会有协变逆变? //首先,由里氏替换我们知道,子类可以安全的赋值给父类。 //(不熟悉可以会议六大设计原则//solid: //s——单一职责 // 阅读全文
posted @ 2024-01-07 14:21 猿锋博客 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 快捷方式——属性——选择图标——确定 。解决问题 阅读全文
posted @ 2023-11-04 15:22 猿锋博客 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 矢量图像和数字图像是两种不同的图像表示方式: 矢量图像:矢量图像使用数学公式来描述图像中的几何形状和颜色信息。它由一系列点、线段和曲线组成,每个元素都有其位置和属性。矢量图像可以无限缩放而不失真,因为它们基于数学公式生成,而不是像素网格。 数字图像:数字图像由像素组成,每个像素都包含有关图像中某个位 阅读全文
posted @ 2023-11-04 13:49 猿锋博客 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 1、为什么要有扩展方法? 先思考这样一个问题,如果已有类中需要添加一个新的方法,应该如何实现呢?可能会有如下几种方法: (1)、有源代码情况下,直接增添一个方法 实现; (2)、无源代码情况下,继承该类(可继承的情况下),由子类方法实现; (不可继承)则通过组合的方式实现。 但是 方法2存在一个问题 阅读全文
posted @ 2023-09-30 21:27 猿锋博客 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 线程安全发生的终极原因是:内存,寄存器存在时间差。 今天突然想到一个很好的例子 解释这个问题:一堂随堂测试,你正在答一道题,老师巡考看到你的答案是正确的,其他同学全部是错误的。晚上老师说道这次考试这道题只有一个同学做对了。但是老师不知道 你在他走后,修改了答案。最终考试试卷阅完后,这次考试这道题答对 阅读全文
posted @ 2023-07-09 21:29 猿锋博客 阅读(2) 评论(0) 推荐(0) 编辑