2012.4.19 C#基础学习笔记
——张伟
集合:
->ArrayList arr = new ArrayList();
arr.Add("hello");
->Hashtable hash = new Hashtable();
hash.Add("9527","张三");
注意:ArrayList和Hashtable括号里的内容都是object类型,其中ArrayList括号里是单个的,Hashtable里面是两个,称为键值对
泛型:
->List<string> list = new List<string>();
list.Add("hello");
->Dictionary<int,string> dic = new Dictionary<int,string>();
dic.Add(1,"张三");
或者也可以
->Dictionary<string,string> dic = new Dictionary<string,string>();
dic.Add("Key","Value");
称为字典,也即键值对的形式
多态:根据字面意思即知为多种状态
->父类中的方法要用到关键字 virtual
->如果乳类中用到了virtual方法,即虚方法,那么子类的方法要有override关键字,即重写父类中的方法
->多态的实现
->new则隐藏,override则重写
->隐藏看类型,重写只管新
->从作用上来看,是对父类的一个修饰,就是父类与子类有相同的方法名(名字、返回值、参数等)
virtual与override:
->virtual的方法就是为了让子类重写的,所以virtual是用在父类中
->override表明要重写父类方法,所以override用在子类中
隐藏基类的方法表现:
->使用一个子类对象,在什么环境中(将其转化为某个父类)就表现出什么样的特征
重写基类方法类实现:
->使用父类引用子类,达到统一调用,不同实现,其中统一调用是指用父类对象来调用方法,不同实现是指父类指向不同的子类对象,其实现方法不相同
接口与抽象类:
->方法不知道怎么写或者不需要写的时候可以考虑
抽象类和抽象方法:
->抽象方法 必须 出现在抽象类中
->抽象类 不能 被实例化
->抽象类用abstract关键字,抽象类中的方法也 必须 用abstract修饰,称为抽象方法
抽象方法语接口:
->抽象类对一类具体的事物进行抽象,是针对对象
->接口是对功能的一种抽象,针对的是一种能力或方法
实现多态的方法:
->用父类实现
->用抽象类实现
->用接口实现