自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于C#中静态方法与实例方法的认识

实例方法与对象实例相关联,需要通过对象实例来调用,可以访问实例成员。静态方法与类关联,通过类名直接调用,不能访问实例成员。实例方法通过 this 关键字引用当前实例。静态方法不能使用 this 关键字,因为它没有实例上下文。实例方法的生命周期与对象实例的生命周期相同。静态方法的生命周期与程序的生命周期相同。

2024-04-02 23:03:30 316

原创 枚举类型与int、string等其他类型之间的相互转换

(所有数据类型)枚举同样可以跟string类型相互转换,如果将枚举类型转换成string类型,则直接调用Tostring()。枚举类型默认可以跟int类型互相转换,枚举类型跟int类型是兼容的,可以通过强制类型转换的语法进行相互转换。将枚举声明到命名空间的下面,类的外面,表示这个命名空间下,所有的类度可以使用这个枚举。当转换一个枚举中没有的值的时候,不会抛异常,而是直接将数值显示出来。可以将枚举类型的变量跟int类型和string类型互相转换。枚举声明、赋值、使用到方式与其他那些普通的变量类型不一样。

2024-04-02 23:02:30 372

原创 线程概念初探

进程Process线程Thread线程中的指令:一个方法(委托)线程中的数据:相关的对象。

2024-04-02 23:01:50 524

原创 C#多线程总结

所谓死锁,是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。因此我们举个例子来描述,如果此时有一个线程A,按照先锁a再获得锁b的的顺序获得锁,而在此同时又有另外一个线程B,按照先锁b再锁a的顺序获得锁。当一个线程执行递增和递减操作时,其他线程需要依次等待。这种常见问题通常被称为线程同步。

2024-04-02 22:56:57 980

原创 事件概念粗探

事件是一种特殊的委托,或者说是受限制的委托,是委托的一种特殊应用,更符合面向对象类的易维护需求。

2024-03-07 10:32:43 195

原创 集合概念粗探

集合是用来存储和管理一组特定类型的数据对象。除了基本的数据处理功能外,集合直接提供了各种数据结构及算法的实现,如队列、链表、排序等。集合(Collection)类是专门用于数据存储和检索的类。这些类提供了堆栈(Stack)、队列(Queue)、列表(List)和哈希表(Hash table)的支持。集合本身也是一种类型,可以将其作为存储数据对象的容器;管理数据对象的集合同样被实现成为对象,而存储在集合中的数据对象则被称为集合元素。

2024-03-07 10:30:00 384

原创 目录管理粗探

Filelnfo类提供了与File类相同的功能,不同的是Filelnfo提供的都是成员方法,如果打算多次重用某个对象,可考虑改用FileInfo的相应实例方法,因为并不总是需要安全检查。DirectoryInfo类与Directory类的不同点在于DirectoryInfo类必须被实例化后才能使用,而Directory类则只提供静态的方法。C#语言中可以通过Directory类或Directoryinfo类来创建、复制、删除、移动文件夹。.Net框架提供了文件目录管理、文件管理、文件读写等基本操作的类。

2024-03-07 10:28:34 424

原创 里氏转换原则

而使用as关键字时,如果原类型无法转换为目标类型,则首先将其设置为Null,然后在转换为目标类型,因此不会发生异常。子类可以替换父类并且出现在父类能够出现的任何地方,且程序的行为不会发生变化,但反过来,父类对象不能替代子类对象,这种特性称为“里氏替换原则”。4.子类对象可以代替父类对象,那么可以将父类类型的变量作为方法的形式参数,在调用方法是传入子对象,从而实现多态;5.子类作为方法的返回类型:在类的方法中,可以将类的方法类用父类类型,在方法中的返回类型采用派生类类型。3.子类可以加入父类类型的数组中;

2024-03-05 11:15:48 183

原创 抽象概念粗探

如果一个类的设计目的是用来被其他类继承的,它代表一类对象的所具有的公共属性或方法,那么这个类就应该设置为抽象类。在普通类(非抽象类)上添加一个前缀abstract,一个抽象类的派生类可以是抽象类,也可以是非抽象类。在类中不包含任何实现代码,不具有任何具体功能的方法,称为抽象方法。抽象成员包括抽象方法、抽象属性、抽象索引和抽象事件。只要在类定义中包含一个抽象方法,该类就是抽象类。

2024-03-05 11:14:16 170

原创 继承与派生

语法:​[存储属性] [修饰符] class 派生类名称:基类名称// 类体存储属性:静态类static。访问控制修饰符:如果是外置的,修饰符只有public和internal,默认是internal。基类名称:表示所继承的类。派生类的可访问性不能高于其基类型。成员的可访问性决不能高于其包含类型的可访问性。

2024-02-29 10:32:50 270

原创 split( )函数

split() 通过指定分隔符对字符串进行切片。如果指定了整型参数num,则仅分隔num + 1个子字符串(即分割num次)。使用split()函数将字符串分割后,返回的是一个列表,列表中存储着分割后的每个子串。str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。若字符串中没有分隔符,则把整个字符串作为列表的一个元素。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量。有效分隔符:待分割的字符串中存在该分隔符,且num参数有效。

2023-09-25 09:39:42 1142

原创 set( )函数

需要注意的是,使用 add() 方法添加的元素,只能是数字、字符串、元组或者布尔类型(True 和 False)值,不能添加列表、字典、集合这类可变的数据,否则 Python 解释器会报 TypeError 错误。如果我们不想在删除失败时令解释器提示 KeyError 错误,还可以使用 discard() 方法,此方法和 remove() 方法的用法完全相同,唯一的区别就是,当删除集合中元素失败时,此方法不会抛出任何错误。,返回一个新的集合,包括同时在集合 x 和y中的共同元素。序列、集合或迭代器对象。

2023-09-25 09:39:12 3956

原创 lambda( )函数

例如reduce(lambda a, b: ‘{}, {}’.format(a, b), [1, 2, 3, 4, 5, 6, 7, 8, 9])将列表 [1, 2, 3, 4, 5, 6, 7, 8, 9]中的元素从左往右两两以逗号分隔的字符的形式依次结合起来,其结果是’1, 2, 3, 4, 5, 6, 7, 8, 9’。**此时lambda函数用于指定过滤列表元素的条件。例如map(lambda x: x+1, [1, 2,3])将列表[1, 2, 3]中的元素分别加1,其结果[2, 3, 4]。

2023-09-25 09:37:31 688

原创 isdigit( )函数

Python isdigit() 方法检测字符串是否只由数字组成,只对 0 和 正数有效。**注意:**isdigit() 方法只对正整数有效,负数及小数均返回不正确。如果字符串只包含数字则返回 True 否则返回 False。

2023-09-25 09:36:37 567

原创 关于Python语言中的Map()函数的相关解释

Python 的 map()函数作用于一个可迭代对象,使用一个函数,并且将函数应用于这个可迭代对象的每一个元素。

2023-09-19 11:27:09 510 1

空空如也

空空如也

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

TA关注的人

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