您的位置:首页 > 职场人生

黑马程序员_C#基础篇总结5

2014-09-01 00:13 169 查看
1、多态:如果子类和父类的方法重名了,会报绿线,如何把绿线去掉?

方法一:可以再子类的方法的访问修饰符后面加new

方法二:可以再父类的方法上加一个virtual,然后子类在继承父类的时候可以用override来重写父类的方法

2、虚拟成员或抽象成员不能是私有的(virtual、abstract不能与private一起使用),且父类中的方法不能用private或static修饰,重写基

类方法一样可以调用基类方法

3、如果一个方法加上了abstract,那么这个方法就叫抽象方法,同时这个方法所在的类必须用abstract来修饰

4、abstract使用注意:⑴抽象方法没有方法体⑵抽象成员只能存在于抽象类中⑶抽象类可以有非抽象成员⑷抽象类的派生类必须实

现抽象方法体⑸抽象类只能作用于基类,无法实例化

5、override和overload的区别:重载是方法的名称相同,参数或参数类型不同,进行多次重载以适应不同的需要。重写是重新给基

类中函数写个方法体

6、用virtual修饰的方法叫做虚方法,虚方法可以在子类中通过override关键字来重写,常见的虚方法有:ToString() Equals

7、虚方法和抽象方法比较:

⑴前者用virtual修饰,后者用abstract修饰

⑵前者要有方法体,后者不允许有方法体

⑶前者可以被子类override,后者必须被子类override

⑷前者除了密封类都可以写,后者只能在抽象类中写

8、Class1 cl = new Class1();Console.WriteLine(cl);  直接new一个类然后打印这个类的实例,结果会显示这个实例的类型:Class1。 

当override重写Class1的ToString()方法时,打印的结果会改变。

9、接口的定义:interface关键字,接口中可以有属性、方法(未实现),通常以“I”开头,如果一个类即继承了类又实现了接口,那么类

必须写在前面。一个类只能继承一个父类,但可以实现(对于接口不说继承)多个接口

10、C#中的接口和类有什么异同:

不同点:

⑴不能直接实例化接口

⑵接口不包含方法的实现

⑶接口可以多继承,类只能单继承

⑷类定义可以再不同的源文件之间进行拆分

相同点:

⑴接口、类和结构都可以从多个接口继承

⑵接口类似于抽象基类,继承接口的任何非抽象类型都必须实现接口的所有成员

⑶接口和类都可以包含事件、索引器、方法和属性
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: