C#
文章平均质量分 61
C#一些高阶语法
不爱敲代码的小梓
欧我的上帝呀,我讨厌敲代码。欧我的雅典娜呀,我不要敲代码
展开
-
C# 高阶语法 —— Winfrom链接SQL数据库的存储过程
创建存储过程 usp_ScoreQuery1-- 查询考试成绩,显示:学号、姓名、班级、总成绩,并按成绩的总分高低排序。-- 统计分析考试成绩,显示班级名称、C#平均分、数据库平均分,按照班级分组实现。use SMDBgogoas-- 查询考试成绩-- 分析考试信息go针对上面实现的效果,继续修改,改为参数可以带默认值use SMDBgogo-- 带默认值asgo-- 调用参数带默认值的存储过程use SMDBgo。原创 2024-02-29 20:08:48 · 985 阅读 · 0 评论 -
C# —— 继承
调用子类的构造函数时候 先调用父类的构造函数 再去执行子类的构造函数:base() 基类,先去调用父类的构造函数 再去调用子类的构造函数 默认情况下 base 可以省掉的4 最后结果为不带参数构造函数会默认调用父类不不带参数的构造函数 调用new Dog(),会调用父类的new Animal()带参数的构造函数不会默认调用父类的带参数的构造函数 调用 new Dog(1,2,3,4) 不会调用new Animal() 有参数的构造。原创 2024-01-13 16:47:07 · 549 阅读 · 1 评论 -
C# —— 动态性多态
1 当父类里面有一个方法需要在继承的类里面实现的时候,可以使用虚方法。3 虚方法可以在不同的继承的类里面有不同的实现。2 使用virtual进行定义虚方法。可以不重写,走的还是继承过来的say方法。4 虚方法实在运行的时候发生的。5 虚方法是动态多态性的体现。1 先创建一个父类,里面用virtual进行定义虚方法。重写虚方法 override。3 在Main里面进行调用。原创 2024-01-06 17:27:52 · 501 阅读 · 1 评论 -
C# —— MD5编码
MD5:属于一种加密算法,单向不可逆加密。1 对用户密码或者一些隐私的信息进行加密处理2 对一段文字生产成信息摘要,这个摘要是具有唯一性的,可以作为数字的签名。3 用于验证文件的有效性4 在哈希函数计算散列值。原创 2024-01-29 19:40:26 · 622 阅读 · 0 评论 -
C# —— 数组lambda表达式
find 查找满足条件的第一个元素,但是这个必须自己写,参数是函数写筛选的条件。原创 2024-01-09 20:10:22 · 818 阅读 · 0 评论 -
C# —— 委托
/ 多播,绑定多个方法。// delegate 可以委托有返回值也可以委托无返回值的方法,包含了Action和Func的这两个的作用。委托:(delegate) 类似于c语言的指针,委托是存有对某个方法的引用的一种引用类型变量,其实委托就是一种。1声明委托 类似于声明一个变量 public delegate 方法返回值类型 委托名(参数1,参数2);1:定义一个普通方法,参数1是字符串,参数2是整型,参数3是一个方法(有返回值传递三个整数的方法)// m1 委托类型的变量,FirstAdd 委托方法。原创 2024-01-15 20:58:24 · 1598 阅读 · 0 评论 -
C# —— 接口
c1.Run();// run方法定位到cat类里面的方法可以把子类对象赋值给接口类型的变量cat.Run();// run方法定位到c接口里面的方法接口具有强制性 可以实现(:)另外一个接口,类可以实现一个接口或者多个接口不能使用new 进行创建。原创 2024-01-05 20:18:08 · 406 阅读 · 0 评论 -
C# —— 线程
只需要将他们添加到 MyThread类中的 public static void test3()方法中,再到Main里面进行调用即可,如下。线程:被定义为程序执行的路径,每个线程都定义了一个独特的控制流。每个进程可以有多个线程,每个进程默认都有一个主线程。1 未启用状态,线程创建好了,但是没有调用start方法进行开启。默认都是在主线程中进行执行的,使用线程可以提高程序执行的效率。2 就绪状态,线程准备好了等待cpu周期时的状态。4 死亡状态,当线程已经完成执行或者终止时的状态。3人一张桌子 余2个人;原创 2024-01-22 20:57:41 · 516 阅读 · 0 评论 -
C# —— 委托传递的方法实例
1 添加一个跳转按钮 跳转到form2窗体 对应button1_click2 定义一个要传递的方法 对应的ChangeBack方法3 在Form2 定义一个委托类型接受changeBack方法 ,再定义一个委托类型的变量form2的c1ChangeBack 传递到Form2里面 改变窗体的背景颜色c参数传递颜色, f1传递窗体在Form2里面定义委托类型及委托变量// c创建一个委托类型的变量 目的是把方法赋值给他// 定义委托类型。原创 2024-01-16 19:42:29 · 613 阅读 · 1 评论 -
C# —— 自定义事件
1 定义发布器类 添加委托类型和事件对象// 在定义事件前,先定义一个委托类型与事件对应// 定义事件 使用关键字event// ChangeNum 以后是一个方法 使用changeNum()// 当value值 设置一样的时候 触发事件函数。public EventTest() // 构造函数初始化value值等于5int n = 5;// 修改value值的方法if(value!= n) // 当value值不一样的时候 才去赋值value = n;原创 2024-01-17 20:45:00 · 846 阅读 · 0 评论 -
C# —— 结构体
4 结构体在声明字段初始化不能赋值,可以再构造器进行赋值,类可以在初始化和构造函数都可以赋值。6 结构体里面不能声明protected成员变量、类中可以声明受保护的成员变量。// 初始化不能赋值。2 结构体不能声明无参数的构造函数,类可以声明无参数的构造函数。5 结构体和类都可以实现一个或者多个接口。3 结构体不能被继承,类可以被继承。1 结构体是值类型,类是引用类型。3 可以定义构造器 必须要赋值。1 创建一个结构体方法。原创 2024-01-08 21:02:39 · 401 阅读 · 0 评论 -
C# —— 特性
conditional:将一些函数隔离出来,相比来说特性歌里策略要比 #define不容易出错。[Conditional("URL")] // 当定义了URl执行f1方法。原创 2024-01-11 20:04:27 · 595 阅读 · 0 评论 -
C# —— 多态
多态: 同一个行为具有多个不同的表现形式, 或形态的能力。原创 2024-01-04 20:52:42 · 447 阅读 · 0 评论 -
C# —— 多继承
例如:c类可以继承与a类,a类可以继承b类。但是不能c类即继承于a类,同时继承于b类。接口里面只有声明没有赋值,那个类使用这个接口,就把对应的属性和方法进行实现。3 定义一个Man类 继承于People 同时继承IAnimal接口。C#不支持多重继承,但是可以通过接口实现多重继承。必须实现IAnimal里面的方法和属性。接口: 给类添加一些限制功能。1 : 首先创建一个People父类。2 :定义一个接口interface。4 最后在Main里面进行调用。原创 2024-01-12 21:03:17 · 715 阅读 · 1 评论 -
C# —— 常用的lambada表达式 以及lambda表达式和数组结合使用
string[] xings = { "张", "王", "李", "赵", "刘", "尹", "关" };string[] names = { "狗蛋", "钢弹", "鸭蛋", "鸡蛋", "蛋蛋", "牛蛋", "洋蛋", "公明", "飞", "唯", "备" };原创 2024-01-10 19:55:29 · 732 阅读 · 0 评论 -
C# —— 抽象类和抽象方法
抽象类只是用来列举一个类所具有的行为,不能通过new来创建对象 可以有抽象方法,只有声明部分,没有实现部分 ,也可以有普通方法,不能是static(静态) 也不能是 sealed(密封)总结:可以通过上面观察到 如果同new 构建抽象类会报错,如果在子类不实现父类的抽象方法时候,也会提示,除非子类也是抽象类。原创 2024-01-04 17:42:48 · 480 阅读 · 0 评论