C#
信仰..
学无止境
展开
-
C#:List 泛型集合之用户管理系统
一、MVC 简介VC 是软件开发行业比较经典的设计模式,是一种代码开发的思想和套路。将要实现的某个功能分成三个部分:V:View[视图层],也就是界面,主要负责和用户进行输入输出的交互;C:Controller[控制器层],负责处理该功能的逻辑部分;M:Model[模型层],主要对数据进行操作;二、用户管理系统简介开发一个控制台的小程序,对用户个人信息进行增删改查四步操作。这...原创 2019-01-31 13:06:31 · 730 阅读 · 0 评论 -
C#:多态之接口语法
一、接口1.抽象类->接口当抽象类中所有的方法都是抽象方法的时候,这个时候可以把这个抽象类用另外一种形式来表现,这种形式叫接口。2.语法格式要求接口使用 interface 关键字定义,没有 class 关键字,接口名一般使用“IXxxx”这种方式进行书写,在一堆脚本中通过名字判断,I 开头的都是接口。接口中不能包含字段,但是可以包含属性(?没有字段,如何写属性那??)接口...原创 2019-01-27 12:56:31 · 409 阅读 · 0 评论 -
C#:多态之自动属性
一、C#属性1.常规属性先定义一个私有的字段,然后在为这个私有字段封装一个公开的属性,在属性中实现 get 和 set 两个方法,这种方式叫做常规属性。当我们使用常规属性的时候,可以在 get 和 set 方法中,编写逻辑代码对取值和赋值进行逻辑的校验。这种方式是我们之前一直在使用的方式。2.自动属性在某些情况下,属性的 get 和 set 只是完成字段的取值和赋值操作,而不包含任何...原创 2019-01-27 12:59:18 · 827 阅读 · 0 评论 -
C#: 封装之五种访问修饰符
一、五种访问修饰符1.public [公开访问]公开的访问权限。当前类,子类,实例对象,都可以访问到。2.private [私有访问]私有的访问权限。只能在当前类内部进行访问使用;子类,实例对象,都访问不到。3.protected [保护访问]受保护的访问权限。只能在当前类的内部,以及该类的子类中访问;实例对象访问不到。4.internal [内部访问]只能在当前程序...原创 2019-01-28 11:05:04 · 490 阅读 · 0 评论 -
C#:异常处理
异常是在程序执行期间出现的问题。C# 中的异常是对程序运行时出现的特殊情况的一种响应,比如尝试除以零。异常提供了一种把程序控制权从某个部分转移到另一个部分的方式。C# 异常处理时建立在四个关键词之上的:try、catch、finally 和 throw。try:一个 try 块标识了一个将被激活的特定的异常的代码块。后跟一个或多个 catch 块。 catch:程序通过异常处理...原创 2019-02-04 12:50:24 · 1787 阅读 · 0 评论 -
C#:委托
C# 委托(Delegate)C# 中的委托(Delegate)类似于 C 或 C++ 中函数的指针。委托(Delegate) 是存有对某个方法的引用的一种引用类型变量。引用可在运行时被改变。委托(Delegate)特别用于实现事件和回调方法。所有的委托(Delegate)都派生自 System.Delegate 类。声明委托(Delegate)委托声明决定了可由该委托引用的方法。...原创 2019-02-08 11:42:05 · 252 阅读 · 0 评论 -
C#:事件
C# 事件(Event)事件(Event) 基本上说是一个用户操作,如按键、点击、鼠标移动等等,或者是一些出现,如系统生成的通知。应用程序需要在事件发生时响应事件。例如,中断。事件是用于进程间通信。通过事件使用委托事件在类中声明且生成,且通过使用同一个类或其他类中的委托与事件处理程序关联。包含事件的类用于发布事件。这被称为 发布器(publisher) 类。其他接受该事件的类被称为 订...原创 2019-02-08 18:04:27 · 4536 阅读 · 2 评论 -
C#:泛型
C# 泛型(Generic)泛型(Generic) 允许您延迟编写类或方法中的编程元素的数据类型的规范,直到实际在程序中使用它的时候。换句话说,泛型允许您编写一个可以与任何数据类型一起工作的类或方法。您可以通过数据类型的替代参数编写类或方法的规范。当编译器遇到类的构造函数或方法的函数调用时,它会生成代码来处理指定的数据类型。下面这个简单的实例将有助于您理解这个概念:using Sys...原创 2019-02-09 10:51:20 · 237 阅读 · 0 评论 -
C#:静态之字段与属性
一、static关键字static 关键字,用于修饰类,字段,属性,方法,构造方法等。被 static 修饰的类称之为“静态类”;被 static 修饰的成员称之为“静态成员”,被修饰过的成员分别称为:静态字段,静态属性,静态方法,静态构造方法。二、静态子段1.概念被 static 关键字修饰的字段,叫做“静态字段”。静态字段不属于任何对象,只属于类,必须要用 类名.静态字段名 ...原创 2019-01-30 20:48:40 · 5590 阅读 · 0 评论 -
C#:静态之方法与类
一、静态普通方法1.概念被 static 修饰的方法,叫做静态方法。直接使用 类名.静态方法名 进行访问。2.注意事项控制台程序的 Program 入口类中的 Main 函数就是一个静态方法;在静态方法中不能调用非静态方法。二、静态构造方法1.概念静态构造方法的作用是用于初始化静态成员。一个类只能有一个静态构造方法,该静态方法没有任何访问修饰符,也没有参数。可以定义在...原创 2019-01-30 20:51:16 · 692 阅读 · 0 评论 -
C#:静态之单例设计模式
一、设计模式private ClassName() { }<1>在程序开发过程中经常会遇到一些典型的问题,在对这些问题进行处理解决的过程中,慢慢的整理出来了一套系统的解决方案,这套方案称之为“设计模式”。<2>在游戏中有很多副本,很多 Boss 需要击杀和通关,网上就出现了很多针对性的副本,Boss 的攻略,通过这些攻略可以很方便的通过这些副本和 Boss。&...原创 2019-01-30 20:55:11 · 657 阅读 · 0 评论 -
C#:嵌套类匿名类与密封类
一、嵌套类1.概念在 C#中可以将一个类定义在另一个类的内部;外面的类叫“外部类”,内部的类叫“嵌套类”;嵌套类和普通类相似,只是声明的位置比较特殊。2.注意事项如果想实例化内部类的话,需要使用 外部类名.内部类名 的方式访问到内部类。二、匿名类1.概念如果某个类的实例对象只会使用到一次,可以使用匿名类的方式创建这个对象。不需要定义类,我们就可以创建一个对象。这样的类一...原创 2019-01-30 20:57:10 · 618 阅读 · 0 评论 -
C#:装箱与拆箱
一、Object 类1.概念在 C#语言中,Object 类是所有类的父类,在 C#中所有的类(内置的,我们自己创建的)都直接或者间接继承自 Object 类。Object 是类,object 是类型。(类与系统关键字的语法颜色区别)2.重写 ToString 方法我们经常会在自己的类中重写 ToString 方法,将类中的信息打印输出。目的是:辅助调试和开发。二、装箱与拆箱...原创 2019-01-30 20:59:20 · 379 阅读 · 0 评论 -
C#:预编译指令与对象初始化器
一、预编译指令1.什么是预编译指令?预编译指令也叫预处理指令,在程序正式编译之前执行。这些指令不会转化为可执行代码中的命令,但是会影响编译过程的各个方面。2.区域指令指令格式:#region Info......#endregion作用:优化代码结构,当我们一个脚本文件有 500 行+,1000 行+的时候,一个脚本文件中会出现大量的字段,属性,方法,各种各样的功能的...原创 2019-01-30 21:01:18 · 324 阅读 · 0 评论 -
C#:List泛型集合
数组的不足我们在使用数组管理数据的时候,是需要预先知道数组的长度的。但是在我们实际的开发过程中,很多数据往往无法事先知道一共有多少,在面对这些数据的时候,就无法使用数组来进行管理了。一、集合结构C#中提供了一系列特殊功能的类,这些类可以存储任意类型的对象,并且长度是可变的,他们统称为集合。在 C#编程语言中,集合结构有两种:泛型集合,非泛型集合。泛型集合:只能存储固定类型的对象...原创 2019-01-31 12:13:14 · 1703 阅读 · 0 评论 -
C#:多态之抽象类语法
一、抽象方法1.虚方法->抽象方法父类里面用 virtual 关键字修饰的方法叫做虚方法,子类可以使用 override 重新写该虚方法,也可以不重写。虚方法还是有方法体的,当我们父类中的这个方法已经虚到完全无法确定方法体的时候,就可以使用另外一种形式来表现,这种形式叫抽象方法。2.抽象方法语法抽象方法的返回值类型前用关键字 abstract 修饰,且无方法体。抽象方法必须存...原创 2019-01-27 12:53:03 · 418 阅读 · 0 评论 -
C#:Dictionary 泛型集合
一、Dictionary<K,V>介绍Dictionary 集合是一种“键值对”集合。该集合中的每个数据都是有两部分组成的,键和值,就和中国人的名字是有姓和名组成的,是一样的道理。在键值对集合中,我们是根据“键”去找值的,这一点和 List<T>不同。在键值对集合中,键必须是唯一的,而值是可以有重复的。List<T>泛型集合,我们只限定了数据(T)的类...原创 2019-01-31 13:23:12 · 1106 阅读 · 0 评论 -
C#:基本语法总结
PS:最近学了C#,很多地方和原理和C以及C++是类似的,因此基本语法我只总结了一些相对于不同的定义方式以及一些新的概念。这里也不再介绍相关编译环境和工程的建立了。一、Hello World和其他语言一样,都是从Hello World着手的。代码:Console.Write("Hello World!");//不会换行Console.WriteLine("Hello Wor...原创 2019-01-26 20:50:08 · 4435 阅读 · 1 评论 -
C#:字符串操作之常用方法
一、字符串常用方法(这里列出来常用的)1.ToUpper()作用:将字符转换成大写形式,仅对字母有效。返回值是转换后的字符串。使用:字符串变量.方法名();例如:name.ToUpper();2.ToLower()作用:将字符转换成小写形式,仅对字母有效。返回值是转换后的字符串。使用:字符串变量.方法名();例如:name.ToUpper();3.Equals() ※作用:比...原创 2019-01-26 20:58:18 · 2837 阅读 · 1 评论 -
C#:字符串操作之 StringBuilder
1.StringBuilder 简介字符串的缺点:当需要对一个字符串变量重复赋值时,在内存中会产生大量的垃圾数据信息。当重复赋值的频率很高时,执行的效率就会降低。String,字符串;Builder,构建器;连起来是“字符串构建器”。StringBuilder 是一个类。SB 类型的变量是引用类型。StringBuilder 类型的“字符串变量”,一直操作同一块内存空间,不会产生垃圾数据...原创 2019-01-26 21:02:00 · 1979 阅读 · 0 评论 -
C#:枚举类型
何为枚举?枚举:enum。说白了就是一个数据类型,同样是用于存储数据的。和之前学习过的的 int,float,double,string......一样;只不过 int,float这些类型是系统定义好的,我们直接可以使用。而枚举类型是需要我们使用者根据实际的开发需要来自行定义的2.何时需要用到枚举?比如说在案例中,我们需要重复的使用到“星期一”到“星期天”这些特定的字符串,我们就可以定...原创 2019-01-26 21:05:36 · 606 阅读 · 0 评论 -
C#:结构体类型
定义:和C、C++概念一样,属于同一种东西结构体语法:声明结构体public struct 结构体名称{public 数据类型 变量名;public 数据类型 变量名;public 数据类型 变量名;}参数说明:public :访问修饰符 struct:关键字,用于声明结构体。使用结构体①创建结构体类型的变量:结构体类型 结构体变量名 = new...原创 2019-01-26 21:09:41 · 1032 阅读 · 0 评论 -
C#:面向对象基础之类与对象
一、类什么是类?“物以类聚,人以群分”。意思是同类的东西经常聚在一起,志同道合的人相聚成群。前者说物,后者说人。这里以物来进行举例说明,水果超市,所有同类的水果摆放在一起,然后放个标签,说明这是什么水果。这一类是苹果,那一类是香蕉.......现实生活中,经常遇到分“类”的问题,比如水果超市要分不同种类来摆放水果。那么在我们的程序中,“类”又是什么东西那???现实生活中,“这一类是苹...原创 2019-01-26 21:17:11 · 349 阅读 · 0 评论 -
C#:面向对象基础之字段属性
一、访问修饰符1.什么是访问修饰符?访问修饰符,又称权限修饰符。目前我们的类中只有字段,通过这个类实例化出来的的对象,这个对象是可以直接访问到相应的字段的,因为字段的访问权限是 public。类是一个模具,对象是使用这个模具制作出来的一个具体的物体。2.public 与 privatepublic:公开的。通过对象名.xxx 的形式可以直接访问到。private:私有的。通过对...原创 2019-01-26 21:24:44 · 406 阅读 · 0 评论 -
C#:面向对象基础之三种方法
一、普通方法1.什么是方法?方法就是函数,在面向对象编程的类中,函数称之为方法。方法就是我们在 C#语法基础课程中讲解的函数,使用语法完全一样。2.什么是普通方法普通方法,就是普通函数。在类中的作用是对对象的“行为”进行描述。行为:也就是说这个对象能干什么。3.普通方法语法 访问修饰符 返回值 方法名(参数列表){方法的具体功能代码;}public 修饰的普...原创 2019-01-27 12:31:44 · 1248 阅读 · 0 评论 -
C#:面向对象基础之堆栈关系
1.对象的赋值演示演示:使用 Person 类创建一个 p1 对象,将 p1 对象赋值给 p2。对象这种“数据”也是引用类型。赋值的过程是传递的堆空间中的引用地址,p1 和 p2 指向了同一个堆空间地址,通过 p1 或 p2 修改了对象中的数据,两个对象都会同时发生改变的。2.对象的实例化Person p1 = new Person("ykc", 22, Gender.男, "...原创 2019-01-27 12:33:57 · 393 阅读 · 0 评论 -
C#: 继承之原理分析
一、继承1.什么是继承?面向对象开发有三大特性(特点 / 特征):封装,继承,多态。将一堆类中的一些共有的“成员”单独抽取出来,作为一个父类,然后这一堆类继承这个父类,共享父类的资源,这就叫做继承。2.继承的好处①优化代码结构,让类与类之间产生关系(人不是孤立存在的,类也一样);②提高代码的复用性,便于阅读(写更少的代码,干更多的活);③为“多态”提供前提(多态是面向对象最复杂的...原创 2019-01-27 12:40:25 · 554 阅读 · 0 评论 -
C#:继承之构造方法
一、子类继承父类构造方法演示:在各个子类中编写各自的构造方法,使用 base 关键字传值给父类。父类:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace one{ /// &...原创 2019-01-27 12:43:34 · 2508 阅读 · 0 评论 -
C#:继承之成员继承
一、子类继承父类哪些成员?1.继承的效果子类继承父类,也就意味着在子类中可以访问到父类中定义的成员。那么在父类中定义的成员(字段,属性,方法)哪些在子类中可以访问到,哪些访问不到那??2.字段字段可以使用 private 和 public 进行修饰,但 80%的时候使用 private 修饰。private 修饰的字段,我们在子类中访问不到;public 修饰的字段,我们在子类中...原创 2019-01-27 12:46:13 · 1024 阅读 · 0 评论 -
C#:多态之虚方法语法
一、多态什么是多态?面向对象开发有三大特性(特点 / 特征):封装,继承,多态。在继承关系的前提下,实例化出不同的对象,这些对象调用相同的方法,但是却表现出不同的行为,这就叫做多态。在 C#语言中体现多态有三种方式:虚方法,抽象类,接口。二、虚方法1.什么是虚方法?在父类中使用 virtual 关键字修饰的方法,就是虚方法。在子类中可以使用 override 关键字对该虚方...原创 2019-01-27 12:48:31 · 392 阅读 · 0 评论 -
C#:Arraylist
ArrayList是.Net Framework提供的用于数据存储和检索的专用类,它是命名空间System.Collections下的一部分。它的大小是按照其中存储的数据来动态扩充与收缩的。所以,我们在声明ArrayList对象时并不需要指定它的长度。优点1、支持自动改变大小的功能2、可以灵活的插入元素3、可以灵活的删除元素和list的区别(缺点)在arraylist中,我们可以...原创 2019-02-25 15:50:20 · 751 阅读 · 0 评论