类class和结构struct的区别
● 类是引用类型,结构是值类型
● 类可以继承,也可以实现接口;结构不能继承,但可以实现接口
● 类可以有显式声明的无参数构造函数;结构不能包含显式的无参数构造函数
● 结构中不能有实例字段初始值设定,但类没有任何限制
● 类的构造函数里面可以不用对所有字段进行初始化;结构的构造函数里面必须对所有字段进行初始化
● 类可以有析构函数,但结构不行
面向对象的三大特征是什么?
封装,继承,多态;
面向过程和面向对象的区别
面向过程和面向对象都是解决问题的逻辑方法,分析问题既可以用面向对象的方法来思考,也可以用面向过程方法来解决,但两者还是有一定区别
面向过程:是分析问题并解决问题所需要的步骤,强调是解决问题的步骤。可以先定义多个函数,在使用的时候逐步调用函数即可
面向对象:是把问题分解成多个对象,强调的是解决问题的行为表现
在.net中接口、类、抽象类有什么异同?
抽象类:
1)抽象方法只作声明,而不包含实现,可以看成是没有实现体的虚方法
2)抽象类不能被实例化
3)抽象类可以但不是必须有抽象属性和抽象方法,但是一旦有了抽象方法,就一定要把这个类声明为抽象类
接口:接口不能被实例化接口只能包含方法声明接口的成员包括方法、属性、索引器、事件;接口中不能包含常量、字段(域)、构造函数、析构函数、静态成员。
相同点:都可以被继承都不能被实例化都可以包含方法声明派生类必须实现未实现的方法
不同点:抽象基类可以定义字段、属性、方法实现。接口只能定义属性、索引器、事件、和方法声明,不能包含字段。
抽象类是一个不完整的类,需要进一步细化,而接口是一个行为规范接口可以被多重实现,抽象类只能被单一继承接口可以用于支持回调,而继承并不具备这个特点
…
…
…