51
Dev开发社区
首页
文章
问答
工具
搜索
登录
注册
#知识
C#基础知识之值类型和引用类型、堆和栈、装箱和拆箱
值类型直接存储其值,引用类型存储对值的引用,值类型存在堆栈上,引用类型存储在托管堆上,值类型转为引用类型叫做装箱,引用类型转为值类型叫拆箱。 C#值类型数据直接在他自身分配到的内存中存储数据,而C#引用类型只是包含指向存储数据位置的指针。 C#值类型,我们可以把他归纳成三类:值类型基础数据类型(除s...
代码星球
·
2021-02-19
类型
基础知识
之值
引用
装箱
C#基础知识之可空类型
C#2.0中引入了可空类型,可空类型是值类型,只是可空类型是包括null的值类型的。如:DateTime?CreateTime=null;上面代码DateTime?就是可空的DateTime类型,然而其实"?"这个修饰符只是C#提供的一个语法糖,其实就是C#2.0提供的可空类型是Nullable<T>,下面...
代码星球
·
2021-02-19
基础知识
之可
类型
C#基础知识之DI之循环依赖
注意:出现循环依赖是设计上的问题,一定要避免!循环依赖就是循环引用,就是两个或多个Bean之间相互引用,比如CircleA引用CircleB,CircleB引用CircleC,CircleC引用CircleA,则它们最终反映为一个环。此处不是循环调用,循环调用是方法之间的环调用。 1、循环调用是无法解决的,除...
代码星球
·
2021-02-19
基础知识
DI
循环
依赖
C#基础知识之抽象类继承接口
有的时候需要将接口和抽象类配合起来使用,这样可以为开发者提供相当的便利性,开发者觉得哪个方便就选用哪个。这样的抽象类称为便利类。此时,便利类并不需要实现接口的所有方法,可以留给继承它的子类去实现它们。这么做并非是没有意义的,当你自己写的类想用接口中个别方法的时候(注意可以不是所有的方法),那么你就可以用一个抽象类先实现...
代码星球
·
2021-02-19
基础知识
抽象
继承
接口
C#基础知识之浅拷贝和深拷贝
浅拷贝是指将对象中的所有字段逐字复制到一个新对象对值类型字段只是简单的拷贝一个副本到目标对象,改变目标对象中值类型字段的值不会反映到原始对象中,因为拷贝的是副本对引用类型字段则是指拷贝他的一个引用到目标对象,改变目标对象中引用类型字段的值会将它反映到原始对象中,因为拷贝的是指向堆是上的一个地址。深拷贝与浅拷贝不同的是对...
代码星球
·
2021-02-19
拷贝
基础知识
之浅
C#基础知识之理解HTTP协议
在互联网时代HTTP协议的重要性无需多言,对于技术岗位的同学们来说理解掌握HTTP协议是必须的。本篇博客就从HTTP协议的演进、特性、重要知识点和工作中常见问题的总结等方面进行简单的介绍。理解掌握了这些点工作中就OK了,当然在面试中也是少不了的,如果能结合实践掌握这篇博客的80%应对一般的面试应该是够了。如果要深入学习...
代码星球
·
2021-02-19
基础知识
理解
HTTP
协议
C#基础知识之图解TCP IP》读书笔记
协议就是计算机与计算机之间通过网络实现通信事先达成的一种“约定”。这种“约定”使那些由不同厂商的设备、不同的CPU以及不同的操作系统组成的计算机之间,只要遵循相同的协议就能够实现通信。反之,如果使用的协议不同,就无法通信。 分组交换是将大数据分割为一个个叫做包(Packet...
代码星球
·
2021-02-19
基础知识
图解
TCP
IP
读书
C#基础知识之理解Cookie和Session机制
会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不...
代码星球
·
2021-02-19
基础知识
理解
COOKIE
Session
机制
C#基础知识之DirectorySearcher 类
活动目录(ActiveDirectory)是从一个数据存储开始的,它采用了类似ExchangeServer的数据存储,所以被称为ExtensibleStorageService(ESS)。其特点是不需要事先定义数据库的参数,可以做到动态地增长,性能非常优良。这个数据存储之上已建立索引的,可以方便快速地搜索和定位。活动目...
代码星球
·
2021-02-19
基础知识
DirectorySearcher
C#基础知识之GC 垃圾回收
.Net所指的托管资源到底是什么意思呢?是相对于所有资源,还是只限于某一方面的资源?很多人对此不是很了解。其实.Net所指的托管只是针对内存这一个方面,并不是对于所有的元素;因此对于Stream,数据库的连接GDI+的相关对象,还有Com对象等等,这些资源并不是受到.Net管理而统称为非托管资源。而对于内存的释放和回收...
代码星球
·
2021-02-19
基础知识
GC
垃圾
回收
C#基础知识之Ref Out Params 4种类型的参数
值参数是通过将实参的值复制到形参,来实现按值传递到方法,也就是我们通常说的按值传递。方法被调用时,CLR做如下操作:1、在托管栈中为形参分配空间;2、将实参的值复制到形参。这个太常用了,按值传递参数,是复制一份,因此不影响原来参数的值。publicclassProgram{staticvoidMain(string[]...
代码星球
·
2021-02-19
基础知识
Ref
Out
Params
4种
C#基础知识之父子类,实例、静态成员变量,构造函数的执行顺序
父子类、示例、静态成员变量、构造函数的概念的基础理解完全可以利用下面的示例诠释,非常经典,直接上代码: publicclassShowInfo{publicShowInfo(stringinfo){Console.WriteLine(info);}}classfather{publicstaticShowIn...
代码星球
·
2021-02-19
基础知识
之父
子类
实例
静态
C#基础知识之扩展方法
扩展方法需要满足的条件:1、扩展方法必须定义在静态类里。2、扩展方法必须是静态方法。3、扩展方法的第一个参数以this修饰符为前缀。4、扩展方法必须在使用它的类的扩展方法内,否则必须显示的using扩展方法所在的命名空间。5、扩展方法只能被对象调用。6、其他命名空间下的扩展方法优先级低于当前命名空间的扩展方法。7、扩展...
代码星球
·
2021-02-19
基础知识
扩展
方法
C#基础知识之Dynamic类型
Dynamic类型是C#4.0中引入的新类型,它允许其操作掠过编译器类型检查,而在运行时处理。编程语言有时可以划分为静态类型化语言和动态类型化语言。C#和Java经常被认为是静态化类型的语言,而Python、Ruby和JavaScript是动态类型语言。一般而言,动态语言在编译时不会对类型进行检查,而是在运行时识别对象...
代码星球
·
2021-02-19
基础知识
Dynamic
类型
C#基础知识之Partial
C#2.0可以将类、结构或接口的定义拆分到两个或多个源文件中,在类声明前添加partial关键字即可。例如:下面的PartialTest类classPartialTest{ stringStr_FieldTest; intInt_FieldTest; publicvoidDoTest() { Debug....
代码星球
·
2021-02-19
基础知识
Partial
首页
上一页
...
3
4
5
6
7
...
下一页
尾页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他