
八股文
文章平均质量分 91
Winemonk
github - https://github.com/Winemonk
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C#多线程访问资源
在 C# 中,多线程访问共享资源需要通过同步机制来保证线程安全。通过合理选择同步机制,可以平衡性能与线程安全。原创 2025-04-23 13:58:07 · 808 阅读 · 0 评论 -
常见的五种权限管理模型
每个资源绑定一个列表,明确指定用户/组对该资源的操作权限(如读、写、执行)。本文为五种常见权限模型的详细说明,包括原理、适用场景、优缺点及对比总结。资源所有者(如文件创建者)可自主决定其他用户的访问权限,允许权限传递。系统根据预设安全策略(如安全标签)强制控制访问,用户无权修改规则。基于属性(用户、资源、环境)动态计算访问权限,规则由策略引擎评估。:文件系统的权限控制(如Windows文件共享)。用户通过角色间接获得权限,权限绑定角色而非个人。:Linux文件系统的。原创 2025-04-23 13:55:52 · 708 阅读 · 0 评论 -
面向对象设计原则
如果以后存储学生信息的方式发生变化(比如从数据库存储改为文件存储),或者计算平均成绩的算法需要调整,都会影响到这个类的多个方法,导致代码的可维护性变差,违反了单一职责原则。类,它最初负责存储学生的基本信息(如姓名、年龄、学号等),后来又添加了功能,要负责计算学生的成绩平均值以及打印学生的详细信息。将不同的职责拆分到不同的类中,这样当某一项职责发生变化时,只需要修改对应的类,而不会影响到其他类,提高了代码的可维护性。方法对它来说是没有意义的,但由于继承关系,它还是会继承这些方法,这就导致了不适当的复用。原创 2024-11-08 16:41:26 · 1381 阅读 · 0 评论 -
.NET C# 八股文 代码阅读(一)
声明变量时,会进行装箱(boxing),使其变成对象,因此在传递给方法时传递的是引用。类型的修改都会创建新的字符串,所以相当于是赋予了新的引用地址,并没有修改。因此,所有的匿名方法在被执行时,都会打印当前。装箱后的修改,会影响装箱后的对象,但不会影响原来的结构体实例。声明变量时,是一个值类型,因此在传递给方法时会进行值复制。是引用类型,传递的是引用,方法中的修改会影响原对象。对象,是引用类型,所以返回的实际上是一个指向。,但修改数组(引用类型)的内容会影响原数组。的引用,而不是它的当前值,当。原创 2024-06-19 10:52:31 · 1654 阅读 · 1 评论 -
.NET C# 装箱与拆箱
在C#中,装箱和拆箱是将值类型转换为引用类型及其逆过程的操作。理解装箱和拆箱对于性能优化和正确使用类型转换非常重要。下面详细介绍这两个过程。原创 2024-06-19 10:56:11 · 1885 阅读 · 1 评论 -
.NET C# ‘string‘ 类型思考与解析
sring是引用类型,但它的赋值行为看起来像值类型。任何对字符串的修改操作都会创建一个新的字符串对象,而不是修改原有对象。综上所述,将字符串设计为引用类型,并允许相同字符串共享同一个实例,是为了在内存使用和性能上取得平衡,尤其是在处理大量字符串数据的情况下,这种设计带来了显著的效率提升。字符串被设计成引用类型且相同字符串实例共享同一个地址,主要是为了解决效率和资源管理的问题。这种行为看起来像值类型的赋值,但实际上是因为字符串的不可变性导致的。首先,需要清楚什么是值类型,什么是引用类型?原创 2024-06-13 13:39:42 · 1008 阅读 · 0 评论 -
软件架构设计原则
在软件开发过程中,遵循一定的架构设计原则对于构建高质量的软件系统至关重要。这些原则旨在提高系统的可维护性、可扩展性、可靠性和性能。原创 2024-06-01 15:53:17 · 1013 阅读 · 0 评论