地C#基础(八)数组与接口
一、初始化数组:
string[] s1 = {“aaa”,”bbb”,”ccc”} //直接赋值 string[] s2 = new string[3] {“aaa”,”bbb”,”ccc”}; //赋值加指定长度 string[] s3 = new string[]{“aaa”,”bbb”,”ccc”}; string[] s4 = new string[5]; //用循环直接赋值
二、遍历数组:
foreach (string s in str) { Console.Write(s); }
三、二维数组:
string[,] arr2; //声明一个二维数组 string[,,] arr3; //声明一个多维数组
四、交错数组:
每一行长度不一样的数组。
五、接口
使用new修饰符可以隐藏继承自基类的接口
public class Class2:Class1 { new public interface Iinterface { void Print(); } }
继承多个接口:
public interface Iinterface3 : Iinterface1, Iinterface2, Iinterface3 { void Print3(); }
接口的属性方法等不能具体实现,只能声明。如:
public interface Iinterface { string Name { get; set; } }
实现接口:
public class Program : Iinterface
抽象类和接口:
抽象类的特点:不能被密封,不能直接实例化,允许包含抽象成员
抽象类和接口的区别:
- 一个类能实现多个接口,但只能有一个父类;
- 接口中不能包含非抽象方法,但抽象类中可以有;
- 抽象类是一个不完整的类,而接口是一个行为的规范;
- 接口基本不具备继承的任何基本特点,它只是承诺了能够调用的方法。