
C#概念
艾蓉
从事计算机软件、微软技术、开源技术有关的设计、开发、研究,多年项目经验。
展开
-
CSharp之抽象类(abstract)
抽象类必须有限定词abstract抽象类可以被继承的,因此抽象类不能被关键字sealed修饰,因为sealed修饰的类是不能被继承的。抽象类不可以new对象,也即不能被实例化抽象类中既可以包含抽象方法、属性,也可以包含非抽象方法、属性,有抽象方法、属性的类必定是抽象类抽象类可以继承接口,在继承了接口的抽象类中,所有接口中定义的方法,必须包含方法体,可以不实现,而在此抽象类的派...原创 2019-05-20 09:18:00 · 1242 阅读 · 0 评论 -
CSharp之虚方法(virtual)
虚方法是实现多态基本方法之一虚方法通过virtual关键字修饰虚方法在父类中必须有方法体,在继承类中可以重写(override),也可不重写虚方法所在类可以被实例化父类虚方法在派生类中通过base.fathermethod执行...原创 2019-05-20 09:42:42 · 1846 阅读 · 0 评论 -
CSharp之接口(Interface)
接口通过Interface关键字修饰接口是抽象类的一个实例,当抽象类中所有的方法全部为抽象方法时,这个抽象类可以称为接口接口不能被实例化接口中的方法没有方法体,只能包含方法的声明,并且所有方法成员是公有的(public)接口中成员不能包含常量、字段(域)、构造函数、析构函数、静态成员,但可以包含自动属性接口可以派生子接口或子类,在派生子类中,必须完全实现父接口所有成员接口的...原创 2019-05-20 10:00:59 · 2753 阅读 · 0 评论 -
CSharp之多态(polymorphism)
多态是通过指向基类的指针,来调用实现派生类中的方法多态遵循的两个重要原则是里氏替换原则与开放封闭原则多态可通过虚方法(virtual)、抽象(abstract) 、接口(interface)实现,当需要使用父类方法时,考虑采用virtual方式实现多态多态通常实现方式是在使用虚方法、抽象同时,使用接口,增加多态实现的灵活性...原创 2019-05-20 11:25:39 · 655 阅读 · 0 评论 -
CSharp之封装(encapsulation)
封装是将一个或多个项目封闭在一个物理或逻辑的包中封装可以有效地控制对细节的访问,使开发者实现所需要级别的访问封装根据具体的需要,设置使用都的访问权限,并通过访问修饰符来实现封装的访问修饰符包括:Public:所有对象都可以访问Private:对象内部可以访问Protected:只有该类对象或其子类对象可以访问Internal :同一个程序集的对象可以访问Protec...原创 2019-05-20 14:47:24 · 685 阅读 · 0 评论 -
CSharp之继承(inherit)
继承是可传递的。如果C从B中派生,B又从A中派生,那么C不仅继承了B中声明的成员,同样也继承了A中的成员Object 类作为所有类的基类派生类应当是对基类的扩展,派生类可以添加新的成员,但不能除去已经继承的成员的定义构造函数和析构函数不能被继承。除此以外的其它成员,不论对它们定义了怎样的访问方式,都能被继承。基类中成员的访问方式只能决定派生类能否访问它们派生...原创 2019-05-20 14:57:32 · 1508 阅读 · 0 评论 -
CSharp之new、override、base
一、new关键字表示隐藏,是指加上new关键字的属性或函数将对本类和继承类隐藏基类的同名属性或函数,派生类中new修饰的属性或方法,父类看不到new的新方法,子类看不到被new的父类方法//定义两个类:ClassA类,并在ClassA类中定义方法:ClassA_Method,//ClassB类继承ClassA,并隐藏(new)方法ClassA_Methodnamespace NewIn...原创 2019-05-20 15:48:48 · 2480 阅读 · 0 评论 -
CSharp之 委托(delegate)与事件(event)
一、认识委托可以把delegate理 解成C中的函数指针,它允许传递类A的方法M给类B的对象,使得类B的对象能够调用这个方法M,说白了就是可以把方法当作参数传递。但 delegate和函数指针还是有些区别的,并且更具优势:首先,函数指针只能指向静态函数,而delegate既可以引 用静态函数,又可以引用非静态成员函数。在引 用非静态成员函数时,delegate不但保存了对此函数入口指针...原创 2019-05-20 21:24:04 · 1451 阅读 · 0 评论