C#类包括
1.字段
2.属性
3.方法
4.索引器
C#是面向对象语言同时也包括面向对象所具有的一些特性
1.方法重载
2.继承
3.多态
C#类的初始化:
1.类的字段如果不赋初值,编译器会给他一个初值.
int值返回为0, string 类型返回null, bool 类型,返回flase
2.对于方法内定义的字段的变量不赋初值,编译器则会产生编译时错误
因此C#语言是一个安全性很高的语言.
构造方法
构造方法是对垒的字段进行初始化,他是自动执行,不需要调用.
特点: 和类名相同 构造方法无返回值
C#面向对象特性
方法重载
特点:
1.方法名相同
2.但参数不同
参数不同又可以分为两种 :a类型不同 ,b参数个数不同.
析构方法
在类创建后把垃圾的收集交给了垃圾收集器
语法: ~构造方法() 析构函数当类被收集时回自动调用.
{
}
继承:
继承是面向对象的一种特征,面向对象是描述现实世界的,现实世界
存在一种继承的关系,面向对象也是存在这种关系.
继承的好处: 代码重用.
Java中的继承是用了关键字 extiden 修饰
C#与其是不同的 是在子类名后加:符号
语法: class 类名:继承的类名
例:
public class Demo{}---这个是父类
public class Demo1:Demo{}----这是子类继承父类
注意:
1.子类可以继承父类的所有内容,但对于私有属性和方法不能够访问.
2.在使用时一定要分清楚是**是否是**,如果是才可以继承.
继承中的构造方法:
子类构造的次序: 和Java中构造的次序是一样的.
先构造父类,在构造子类.
如果在构造子类时没有明确的指明调用父类的构造方法,那么会调用
父类默认的构造方法,如果父类没有构造方法编译器则会抱错.
如何调用父类的某个特定的构造方法
语法:
子类构造方法(参数):base(父类参数)
方法隐藏:
如果子类中 和父类有用样的一个方法,那么在C#中这种方法叫做方法隐藏.
子类可以使用New关键字实现方法隐藏.
例:
public void print()
{} ---------父类的一个方法
public void new void print()
{}
多态:
为什么使用多态: 是可以实现一个很好的软件结构.
在C#中多态实现的步骤:
1. 把父类的方法声明为虚方法,加virtual关键字修饰.
2.在子类同名的方法前加上关键字 override 这是使子类覆盖父类的方法.
3.定义父类对象指向子类.
4.使用父类的方法,其实也就是调用字类的方法.