1.C#类和接口的区别:
接口是负责功能的定义,项目中通过接口来规范类,操作类以及抽象类的概念!
而类是负责功能的具体实现!
2.在类中也有抽象类的定义,抽象类与接口的区别在于:
抽象类是一个不完全的类,类里面有抽象的方法,属性,也可以有具体的方法和属性,
需要进一步的专业化。但接口是一个行为的规范,里面的所有东西都是抽象的!一个类只可以继承一个基类也就是父类,但可以实现多个接口.
3.C#语言中,值类型和引用类型有何不同?
值类型和引用类型的区别在于,值类型的变量直接存放实际的数据,
而引用类型的变量存放的则是数据的地址,即对象的引用。
4.结构和类的区别
结构是一个值类型,保存在栈上,而类是一个引用类型,保存在受管制的堆上。
对结构中的数据进行操作比对类或对象中的数据进行操作速度要快。
一般用结构存储多种类型的数据,当创建一个很多类或对象共用的小型对象时,
使用结构效率更高。
5.抽象方法和虚方法的区别.
抽象方法
使用abstract关键字 public abstract bool Withdraw(…);
抽象方法是必须被派生类覆写的方法。
抽象方法是可以看成是没有实现体的虚方法
如果类中包含抽象方法,那么类就必须定义为抽象类,不论是否还包含其它一般方法
虚方法
使用virtual关键字 public virtual bool Withdraw(…);
调用虚方法,运行时将确定调用对象是什么类的实例,并调用适当的覆写的方法。
虚方法可以有实现体.
总结:
虚方法与多态性关系密切,虚方法允许派生类完全或部分重写该类的方法,
需写方法体。抽象类中可以包含抽象方法与一般的方法,抽象类不可以new,抽象方法只是一个定义,
没有方法体,也就是没有{},也不要在里面写内容。它们两个相像的一点是都用override重写
|