一.抽象类
定义:抽象是把多个事物的共性的内容抽取出来,本质就是把我们关注具有共性的内容抽取出来,类是一个具有相同特征和行为的抽象,而抽象类(class 前加上 abstract)没有指出行为的具体细节,而由他的子类去实现相应的行为。
特征:1.抽象类中的方法可以有方法体,但也可以没有;
2.抽象类是不能被实例化的;
3.抽象类中没有方法体的方法则需要子类去实现。
抽象方法特点:1.抽象方法没有方法体;
2.抽象方法只能在抽象类中,所以抽象方法一定是抽象类,但抽象的类里不一定有抽象方法 ;
3.抽象方法必须在子类中被实现,建立子类对象调用,除非子类是抽象类;
4.抽象方法和类都要由abstract 修饰。
作用:当父类已有实际功能的方法时,该方法在子类中可以不必实现,直接引用的方法,子类也可以重写该父类的方法(继承的概念)。
二.接口(interface)
定义:接口是指定一组函数成员而不实现他们的引用类型。所以只能类和结构来实现接口,在继承该接口的类里面要实现接口的所有方法。
特点:1.接口不可以被实例化;
2.接口中的方法都没有方法体;
3.没有方法体的方法需要类去实现;
4.接口可以被多个类继承;
5.接口中可以有属性、常量、索引器,不能有字段;
6.无论是表现类之间的继承还是类继承接口,接口之间的继承,都要用“:”表示。
作用:接口它可以使继承该接口的类里面可以实现借口里面定义的所有方法代码。
接口和抽象类的差别:
三.集合
基础概念:数组是一组用来存储类型一样的连串数据,如果元素个数是动态的,数组就无法满足使用要求。这个时候就会用到集合。所以集合就是用来存储长度不固定的一连串数据,并且具有一定的逻辑性和数据存储结构。
特点:1.集合类型分为泛型集合和非泛型集合;
2.非泛型集合的类和接口位于System。Collections命名空间;
3.泛型集合的类和接口位于System.Collection.Generic命名空间。
使用(简易使用):
class ListTest
{
public void Get()
{
ArrayList list = new ArrayList();
list.Add(11);
list.Add("22");
list.Add(true);
list.Add(3.5f);
list.Add('男');
list.Insert(2, "hello");
if (list.Contains("hello"))
{
//list.RemoveAt(2);
list.Remove("hello");
}
}