文章分类 - C#
接口1
摘要://接口定义了一个可由类和结构实现的协定,接口可以包含方法、属性、事件和索引器。接口不提供它所定义的成员的实现,它仅指定实现该接口的类或结构必须提供的成员 //在接口中声明的方法没有主体,只有方法的定义,如void myMod(); //如果一个类继承了接口,那么它必须实现接口中的所有方法 //一个接口可以声明零个或多个成员 //接口的成员必须是方法、属性、事件或索引器 //接口不能包含常量、字...
阅读全文
virtual和abstract的各自使用领域
摘要:当继承的子类都需共同实现同样的方法体的我们偏向于使用VIRTUAL,因为virtual可包含方法体 否则如果子类能实现什么都不清楚时我们就偏向使用ABSTRACT,因为它不能包含方法体,而只是方法的定义 1、区别:VIRTUAL可有方法体,并为子类提供覆盖此方法的选项,ABSTRACT不能提供方法体,强制子类覆盖方法 2、ABSTRACT方法只能在抽象类中声明,虚方法可不用 3、ABSTRAC...
阅读全文
abstract修饰“类”、方法、属性、索引器及事件
摘要://abstract 修饰符可以和类、方法、属性、索引器及事件一起使用。在类声明中使用 abstract 修饰符以指示某个类只能是其他类的基类。标记为抽象或包含在抽象类中的成员必须通过从抽象类派生的类来实现。 using System; namespace abstractN { abstract class A//不能被实例化,只能由继承它的类来调用进行实例化 { ...
阅读全文
VIRTUAL修饰方法、属性、索引器或事件
摘要://virtual修饰方法、属性、索引器或事件 using System; namespace vitualN { class A { public virtual void F() { Console.WriteLine("A.F"); } } class B : A { ...
阅读全文
//string索引器
摘要://string索引器 using System; using System.Collections; namespace index3N { class index3 { Hashtable ht = new Hashtable(); public string this[string index] { ge...
阅读全文
//索引器类,索引值还可以是除int以后的其它类型,如string
摘要://索引器类,索引值还可以是除int以后的其它类型,如string //索引器可以重载 using System; namespace index2N { class index2 { private string[] myArr = new string[10]; public string this[int index] { ...
阅读全文
//类数组的使用 + 只读字段的应用
摘要://类数组的使用 + 只读字段的应用 using System; namespace indexN { class index1 { private readonly string name;//允许只赋一次值,且不用在声明时就赋值 public string Name { get { return name;...
阅读全文
值类型:强制转换 + 有无溢出检测之----(类型)转换方式 及 Conver.方式
摘要://强制转换 + 有无溢出检测之----(类型)转换方式 及 Conver.方式 //如果用“(类型)”方式进行类型转换,要检测溢出用checked或unchecked using System; namespace conversionN { class conversion { static void Main() { ...
阅读全文
类型隐式转换
摘要://隐式转换,小的赋给大的没问题,大的赋给小的会出错 using System; namespace conversionN { class conversion { static void Main() { int a = 5; long b = 8; b = a; ...
阅读全文
CAR类的索引器
摘要:using System; namespace Class6 { class Car { string[] wheels = new string[4]; public Car() { wheels[0] = "左前轮"; wheels[1] = "右前轮"; w...
阅读全文
求两个时间天数间隔可以用timespan
摘要:TimeSpan TS = (TimeSpan)(System.DateTime.Now - releasedate); return TS.Days;
阅读全文
swith与IF各有千秋,一般来说switch用于值,IF用于范围,当然IF也可用于值,但Switch不能用于范围
摘要:swith与IF各有千秋,一般来说switch用于值,IF用于范围,当然IF也可用于值,但Switch不能用于范围
阅读全文
分数用类来表示,类是引用类型,改变其中任何一个相互调用的值都会使双方改变
摘要://分数用类来表示,类是引用类型,改变其中任何一个相互调用的值都会使双方改变 using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { class Fraction//把结构变为了类 { public int numerator;...
阅读全文
用结构表示繁分数
摘要://用结构表示繁分数 using System; namespace Sturct3 { struct Fraction { public int numerator; public int denominator; } struct ComplexFraction { public Fraction nume...
阅读全文
分数用结构来表示,结构是值类型,改变它们各自的值不会被改变
摘要://分数用结构来表示,结构是值类型,改变它们各自的值不会被改变 using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication1 { struct Fraction { public int numerator; public ...
阅读全文
显示声明静态构造器,不能带参,不能有修饰符,不能重载,不能被调用
摘要://静态构造函数是实现对一个类进行初始化的方法成员。它一般用于对静态数据的初始化。静态构造函数不能有参数,不能有修饰符,不能被调用,当类被加载时,类的静态构造函数自动被调用 //A.在一个程序执行过程中,静态构造函数最多只执行一次 //B.静态构造器在类的静态成员初始化之后执行 //C.静态构造器在任何的静态成员被调用之前执行 //D.静态构造器在任何类的实例变量被分配之前执行 using Sys...
阅读全文
静态构造器
摘要://静态构造函数是实现对一个类进行初始化的方法成员。它一般用于对静态数据的初始化。静态构造函数不能有参数,不能有修饰符,不能被调用,当类被加载时,类的静态构造函数自动被调用 //A.在一个程序执行过程中,静态构造函数最多只执行一次 //B.静态构造器在类的静态成员初始化之后执行 //C.静态构造器在任何的静态成员被调用之前执行 //D.静态构造器在任何类的实例变量被分配之前执行 using Sys...
阅读全文
显示调用父类的构造器用关键字base
摘要://显示调用父类的构造器用关键字base //任何情况继承类始终默认调用父类的无参构造器,除了显示指定调用父类构造器 //显示调用父类的方法用BASE关键字 using System; namespace Constructor8 { class A { //public A() //{ // Console.WriteLine...
阅读全文
类中如果显示声明了带参构造函数,那么最好也同时显示声明无参构造函数的习惯
摘要:类中如果显示声明了带参构造函数,那么最好也同时显示声明无参构造函数的习惯,即使默认构造函数什么都不做 因为继承的子类实例化时始终会去调用父类的无参构造函数,除非了类显示声明了调用父类的带参构造函数
阅读全文
浙公网安备 33010602011771号