自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SQL Server 基本语法

修改表结构(添加、删除、修改列)

2025-08-18 14:25:16 164

原创 使用 ipconfig /all 获取电脑 IP 地址

是ipconfig命令的一个扩展选项。它不仅显示简要的网络配置信息,还会列出更详细的网络接口信息,包括每个网络适配器的配置。

2025-08-18 09:41:56 202

原创 C# 加密解密类库深入解析

C# 中的加密解密类库为开发者提供了多种常用的加密算法,包括对称加密(AES、DES)、非对称加密(RSA)和哈希算法(MD5、SHA)。这些加密方式在实际应用中有着广泛的应用场景,如数据加密传输、密码保护、数字签名和数据完整性校验等。理解这些加密算法的基本原理和使用方法,有助于提升系统的安全性,确保敏感信息得到有效保护。在开发时,根据具体需求选择合适的加密算法,并确保密钥的安全存储与管理,以最大限度地提高数据安全性。

2025-08-16 09:46:14 716

原创 C#-自定义控件

摘要:本文介绍了C#中创建自定义控件的方法,包括继承现有控件或Control类、重写绘制方法、添加特性和事件处理等步骤。以自定义按钮为例,演示了如何通过继承Button类并重写OnPaint方法实现自定义外观和交互效果。文章还探讨了属性扩展、性能优化等进阶技巧,并指出开发中需注意的性能和兼容性问题。自定义控件能显著提升UI灵活性和用户体验,是C#开发中的重要技能。

2025-08-15 11:08:02 906

原创 C# 异步编程:提高应用程序效率的关键

本文介绍了C#中的异步编程技术,重点讲解了async/await关键字的使用方法及其优势。通过对比同步和异步编程的区别,阐述了异步编程在提高应用程序响应性和性能方面的作用。文章提供了基本的异步编程示例、并行任务执行方案以及异常处理方式,并分析了异步编程在提升I/O操作效率的同时带来的调试复杂性和潜在死锁问题。最后强调在开发中需要合理运用异步技术以达到最佳性能优化效果。

2025-08-14 15:06:42 847

原创 C# 多线程:并发编程的原理与实践

本文将深入探讨 C# 中的多线程原理、实现方式及其应用场景,旨在帮助开发者理解并发编程的核心概念,掌握高效的多线程编程技巧。等,并采取合适的同步机制,开发者可以有效地利用多核处理器,提高程序的响应性和吞吐量。:线程池是一种优化的线程管理方式,允许开发者将任务提交给线程池,由线程池根据任务数量自动调整线程的数量,避免了频繁的线程创建和销毁开销。虽然多线程可以提升程序的性能,但也需要考虑到线程的开销以及系统资源的合理使用。和异步方法,开发者可以编写出非阻塞的代码,大大提升应用程序的响应性。

2025-08-13 20:03:40 1098 1

原创 C#反射细节梳理

C#反射是.NET提供的运行时动态操作程序元数据的强大功能,主要用于动态类型检查、对象创建和方法调用等场景。通过System.Reflection命名空间中的Type、MethodInfo等类,可以获取类型信息、访问字段属性、调用方法及动态创建对象。虽然反射功能强大,但其性能开销较大,需谨慎使用。典型应用包括插件系统、动态代理和自定义特性读取等。BindingFlags枚举可控制反射访问范围,如公有/私有成员等。反射为框架设计和动态编程提供了灵活支持,但需权衡其性能影响。

2025-08-12 14:08:20 337

原创 C#委托嵌套-知识总结

本文探讨了编程中的委托嵌套概念及其应用。委托作为类型安全的函数指针,允许方法作为参数传递或动态调用。委托嵌套通过链式调用或复合委托实现多个方法的顺序执行,常见于事件处理、回调机制、流水线处理和条件执行等场景。其优势在于灵活性、可扩展性和解耦性,但也面临调试复杂、性能开销和错误处理等挑战。委托嵌套是一种强大的编程技术,能有效简化代码并提高可维护性,但需权衡其带来的复杂性。开发者掌握这一技术可更好地应对复杂业务需求。

2025-08-11 14:38:27 488

原创 C#特性与反射知识梳理

特性是从基类派生的类。例如:csharp复制编辑set;} }在上面的代码中,是一个自定义特性,特性指定了它可以应用到类和方法上。特性(Attributes):用于给代码元素(如类、方法、属性等)添加元数据,通常在运行时获取这些元数据。反射(Reflection):用于在运行时获取类型信息并动态操作对象,可以动态创建对象、调用方法、访问字段等。结合使用:通过反射获取和处理特性,能够让程序在运行时更加灵活、可扩展。

2025-08-11 10:36:10 625

原创 C# 委托知识梳理

委托是 C# 中非常强大的功能,它提供了灵活的方式来处理方法引用、回调和事件等任务。理解并掌握委托的用法,能够使我们编写更具扩展性和可维护性的代码。无论是用于异步编程、事件机制,还是 LINQ 查询中,委托都发挥着不可或缺的作用。

2025-08-11 10:32:35 930

原创 C#分层架构知识

通过将 UI、业务逻辑、数据访问层分开,我们不仅可以保持代码的整洁,还能确保各个部分职责单一,更易于管理和扩展。如果有更复杂的需求,还可以引入服务层DTO(数据传输对象)层等额外层级进行进一步的解耦。

2025-08-09 19:08:00 338

原创 C# 装箱与拆箱:深入理解值类型与引用类型之间的转换

装箱(Boxing)是指将值类型(如intcharstruct等)转换为引用类型(如object或接口类型)的过程。在 C# 中,所有的值类型都是存储在栈上的,而引用类型则存储在堆上。当值类型需要作为引用类型使用时,C# 会自动将其包装在一个对象中,这个过程就叫做装箱。拆箱(Unboxing)是装箱的逆过程,即将一个已经装箱的对象转换回其原始的值类型。拆箱会将引用类型的对象重新转换为值类型,这通常需要手动操作。拆箱是一个显式的过程,且必须确保对象的实际类型与目标类型兼容,否则会引发异常。

2025-08-09 08:00:00 686

原创 C# 多播委托

C#多播委托(MulticastDelegate)详解:允许将多个方法绑定到同一委托,按订阅顺序依次执行。通过+=运算符添加方法,-=移除方法。主要应用于事件处理,如按钮点击可触发多个处理程序。使用时需注意返回值应为void,异常处理避免中断执行链,以及方法调用顺序。典型应用包括事件通知、日志系统和消息广播。多播委托为C#事件驱动编程提供了灵活的实现机制。

2025-08-08 21:12:38 325

原创 C#逆变知识梳理

逆变是泛型编程中的重要概念,它允许在方法参数中使用更通用的父类类型替代具体子类类型。在C#中,通过in关键字声明逆变类型参数,使泛型接口或委托能接受父类参数。逆变适用于方法参数类型(与协变的返回类型形成对比),典型应用包括消费者模式、委托和泛型接口实现。例如,IConsumer<Animal>可以接收IConsumer<Dog>实例,从而提升代码的灵活性和复用性。逆变机制通过类型参数的逆向替换,增强了泛型类型的兼容性。

2025-08-08 19:50:45 1263

原创 C#协变知识梳理

通过协变,你可以将生产不同对象的具体生产者赋值给一个更通用的生产者接口,增加代码的灵活性。你可以在接口或委托中使用更具体的类型(如派生类)替代父类类型,保持类型安全。使得你可以灵活地在泛型接口和委托中返回更具体的类型,从而提高代码的灵活性和复用性。:协变的本质是基于类型继承关系的,只有当类型之间存在继承关系时,协变才有效。:协变能够保证类型转换时的类型安全,因为子类类型可以安全地替代父类类型。在 C# 中,协变是通过泛型接口、委托等的类型参数声明中的。:返回类型是协变的,可以使用派生类替代父类。

2025-08-08 19:36:43 1294

原创 C#泛型梳理

C# 的泛型是一种非常强大的机制,广泛应用于集合类、方法、接口等地方。它通过类型参数化使得代码更加灵活、类型安全且高效。理解泛型的核心概念和使用方式,对于编写可维护和可扩展的代码非常重要。

2025-08-08 10:47:22 295

原创 数据存储INI格式,方法调用

注意事项:需要进行一定的配置操作,如果直接粘贴代码打包时可能报错。

2025-08-07 17:16:22 90

原创 如何快速存储和读取数据(CSV)

【代码】如何快速存储和读取数据(CSV)

2025-08-07 17:08:09 72

原创 java学习-----变量与数据类型

浮点类型的数就是小数,因为小数用科学计数法表示的时候,小数点是可以“浮动”的,如1234.5可以表示成12.345x102,也可以表示成1.2345x103,所以称为浮点数。一个字节是1byte,1024字节是1K,1024K是1M,1024M是1G,1024G是1T。对于整型类型,Java只定义了带符号的整型,因此,最高位的bit表示符号位(0表示正数,1表示负数)。引用类型的变量类似于C语言的指针,它内部存储一个“地址”,指向某个对象在内存的位置,后续我们介绍类的概念时会详细讨论。,而是定义一个常量。

2024-05-14 09:00:34 658

原创 java学习------java程序基础结构

帮助我们快速格式化代码的功能,Eclipse就是按照约定的编码格式对代码进行格式化的,所以只需要看看格式化后的代码长啥样就行了。Java程序对格式没有明确的要求,多几个空格或者回车不影响程序的正确性,但是我们要养成良好的编程习惯,注意遵守Java社区约定的编码格式。是另一个修饰符,它表示静态方法,后面我们会讲解方法的类型,目前,我们只需要知道,Java入口程序规定的方法必须是静态方法,方法名必须为。在Java程序中,注释是一种给人阅读的文本,不是程序的一部分,所以编译器会自动忽略注释。

2024-05-10 16:06:15 385

原创 java学习———第一个java程序

通过编写这个程序,学习者能够熟悉Java的语法规则、关键字和代码结构,为后续的学习打下坚实的基础。总之,Java的第一个程序虽然简单,但它的重要性不容忽视。这不仅是编程入门的第一步,更是理解编程语言基本结构和语法的关键。其次,这个简单的程序帮助初学者了解编程的基本流程:编写代码、编译代码、运行程序并查看结果。通过编写和运行这个简单的程序,初学者能够感受到编程的魅力和乐趣,从而激发进一步学习的动力。在代码编辑器的左侧,你会看到一个绿色的播放按钮(或一个带有绿色箭头的图标)。在左侧面板中,选择 Java。

2024-05-09 15:20:02 436

原创 java学习----使用IDE

IDE是集成开发环境:Integrated Development Environment的缩写。使用IDE的好处在于,可以把编写代码、组织项目、编译、运行、调试等放到一个环境中运行,能极大地提高开发效率。IDE提升开发效率主要靠以下几点:编辑器的自动提示,可以大大提高敲代码的速度;代码修改后可以自动重新编译,并直接运行;可以方便地进行断点调试。

2024-05-09 09:25:59 786

原创 java学习-----安装jdk

因为Java程序必须运行在JVM之上,所以,我们第一件事情就是安装JDK。搜索JDK 21,确保从选择合适的操作系统与安装包,找到Java SE 21的下载链接Download,下载安装即可。Windows优先选,Linux和macOS要根据自己电脑的CPU是ARM还是x86选择合适的安装包。

2024-05-08 21:48:36 488 1

原创 Java小白-----学前准备

Java最早是由SUN公司(已被Oracle收购)的(高司令,人称Java之父)在上个世纪90年代初开发的一种编程语言,最初被命名为Oak,目标是针对小型家电设备的嵌入式应用,结果市场没啥反响。谁料到互联网的崛起,让Oak重新焕发了生机,于是SUN公司改造了Oak,在1995年以Java的名称正式发布,原因是Oak已经被人注册了,因此SUN注册了Java这个商标。随着互联网的高速发展,Java逐渐成为最重要的网络编程语言。Java介于编译型语言和解释型语言之间。

2024-05-08 21:46:45 670

空空如也

空空如也

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

TA关注的人

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