C#
c#学习记录
遥感与地理信息
这个作者很懒,什么都没留下…
展开
-
C#学习——7.xml文件读写
一、程序介绍1.界面设计2.设计思路点击写入xml按钮,将构造的数据信息写入指定的xml文件,然后点击读xml按钮将xml文件中的信息读取并循环加载显示到TreeView中。点击读取指定节点时,显示xml文件中name节点的个数。3.构造数据信息://0.全校学生信息集合Dictionary<string, List<Student>> allstudengt...原创 2020-03-10 22:10:29 · 315 阅读 · 0 评论 -
C#学习——6.泛型接口中的协变和抗变
1.变体的由来众所周知,多态性允许把派生类的对象放在基类的变量中,例如:Cow myCow = new Cow("牦牛");Animal myAnimal = myCow;之所以Cow的类型放在Aniaml类型的变量中可行,是因为Cow派生自Animal。但是,在接口中,这种情况是不适用的,会报错例如下面的代码:interface IGetObject<T>{ T ...原创 2020-03-09 00:29:26 · 335 阅读 · 0 评论 -
C#学习——5.Path类与Directory类
1.Path类:操作文件路径//1.获取文件名Console.WriteLine(Path.GetFileName(path));//2.获取文件后缀Console.WriteLine(Path.GetExtension(path));//3.获取不带后缀的文件名Console.WriteLine(Path.GetFileNameWithoutExtension(path));//4...原创 2020-03-04 23:05:26 · 428 阅读 · 0 评论 -
C#学习——4.接口实现多态
1.接口的概念1.1什么是接口?接口是一种规范,是一种约束形式,其中只包括成员定义,不包含成员实现的内容。接口是一种能力,没有具体实现,像抽象方法一样,光说不做。1.2接口怎么定义?接口的定义与类的定义是类似的,只不过关键字不是class,而是interface。具体定义的特点如下:接口成员不允许使用访问修饰符,所有接口成员都隐式为公共成员。接口成员只能包括方法、属性、索引器、事件,...原创 2020-03-04 00:54:24 · 555 阅读 · 0 评论 -
C#学习——3.虚方法实现多态
1.示例代码在类中某个方法前面加上virtual关键字进行修饰,则表示该方法可以在其派生类中进行重写,当然也可以不重写。因此,可以通过在不同派生类中加override关键字进行重写的方式实现多态的效果。2.示例代码using System;using System.Collections.Generic;using System.Linq;using System.Text;usin...原创 2020-03-02 14:47:59 · 577 阅读 · 0 评论 -
C#学习——2.抽象类实现多态
目录1.抽象类1.1抽象类怎么定义?1.2抽象类有什么特点?1.3为什么要用抽象类?2.抽象类实现多态3.完整示例代码1.抽象类1.1抽象类怎么定义?抽象类顾名思义也是类的一种,当一个类使用Abstract关键字修饰时,则表示该类被定义为一个抽象类。public abstract class MyClass{}1.2抽象类有什么特点?抽象类有以下特点:抽象类不能被实例化,只...原创 2020-03-02 14:23:06 · 626 阅读 · 0 评论 -
C#学习——1.类及成员定义
一.类的定义1.1类的访问修饰符修饰符含义无或internal只能在当前项目中访问类public可以在任何地方访问类abstract或internal abstract只能在当前项目中访问,不能实例化,只能被继承public abstract可以在任何地方访问,不能实例化,只能被继承sealed或internal sealed只能在当前项目...原创 2020-03-02 00:11:58 · 451 阅读 · 0 评论 -
C#学习——委托的理解
1.委托的概念委托(delegate)是一种存储函数引用的类型。委托是用返回类型和参数列表定义的变量。 给定的委托类型可以匹配返回类型和参数与委托定义相同的函数。委托可以近似理解为函数指针,即可以实现把方法当作参数进行传递。1.1 委托的定义委托的定义和函数类似,但是不带函数体,并且必须使用delegate关键字。如下所示,定义了一个委托,需要两个double类型的参数,返回类型也是doub...原创 2020-01-06 21:16:19 · 222 阅读 · 0 评论