在学习抽象类和接口前我们先认识一下String类中的几个使用频率较高的方法
1.Equals();
和==比较的内容都是一致的,这边建议string类型的使用Equals();比较好一点。
2.Compare(str1,str2);
该方法返回值是int类型的
作用是比较两个字符串的内容是否一致,是返回0、不是返回-1。
3.Substring(StartIndex);
该方法的返回值是string类型的
作用是对字符串的截取,字符串中下标从StartIndex开始后面的全部字符串。
4.Split(SplitCh);
该方法返回值是一个字符串数组
作用是字符串的分割,SplitCh代表指定的字符,将字符串进行切割。
5.string.Concat(str1,str2,str3...,strn);
作用是将n个字符串连接,中间没有连接符。
5.Replace(oldStr,newStr);
用newStr来替换oldStr。
6.Insert(index,str);
index是要插入的位置,str是要插入的字符。
7.Trim();
删除字符串中开始和结尾处的空格
8.ToLower();将字符串转化为小写形式
ToUpper();将字符串转化为大写形式
string类中的方法还有很多,这里就不一一细说了。
抽象类
定义:是一个具有相同特性和行为的抽象,而抽象类(class前加上abstract)没有指出行为的具体细节,而由他的子类去实现相应的行为。
特征:
- 不能创建一个抽象的实例(不能实例化)。
- 抽象类中的方法可以有方法体,也可以没有。
- 没有方法体的方法必须用子类(派生类)去实现。
- 通过在类的定义前面放置关键字sealed可以将类声明为密封类(最终类)。当一个类被声明为sealed时,它不能被继承。抽象类不能被声明sealed。
- 如果一个类中有抽象方法,那么此类必须是抽象类。
抽象方法的特征:
- 抽象方法没有方法体。
- 抽象方法必须在抽象类里。
- 抽象方法必须在子类中被实现,除非子类是抽象类。
接口
定义:指定一组方法成员而不实现他们的引用类型。
关键字:interface 接口名{}
接口表示一种能力
接口是一种约定
接口的特征
- 接口不可以被实例化。
- 实现类必须实现接口的所以方法。
- 实现类可以实现多个接口(也就是继承多个接口)。
- 接口中的变量都是静态常量。
- 接口中的方法都是没有方法体的。
- 接口中的方法默认都是抽象的,并且没有修饰符。
抽象类和接口的区别