一、语法
循环:
foreach(类型标识符 in 表达式)
{
//code //用法
}
例子
int [] temp = {64,5,57,65};
foreach(int num in temp) // 每次从temp取一个元素赋给num直至取完
{
Console.WriteLine("{0}/n",num); //每行显示一个元素
}
运行结果:
64
5
57
65
C#中只读/只写控制
class Studnet
{
public int sId; //字段
private string sName; // 属性
public string Name
{
get
{
return sName;
} //读写控制。 如:只有get时候只可读
set
{
sName = value;
}
}
}
static void main()
{
Student std = new Student();
std.Name = "Jonathan"; //value = “Jonathan” 调用Name属性中set {sName = value;}
Console.WriteLine("{0}",std.Name); //调用Name属性get{return sName}
}
二、类 面向对象思想
类有两类成员只能通过类名访问
常量 public const int Number = 3;
静态变量 public static int value = 5;
静态成员函数 public static void Print();
Person p = new Person(); //设Person是类
int number = p.Numer; //wrong
int number = Person.Number; // true
p.Print(); //wrong
Person.Print // true
抽象类与虚函数
有抽象函数的类一定是抽象类。
抽象类不一定都是抽象函数。
抽象类定义
abstract class 类名
抽象函数定义
访问修饰符 abstract 返回类型 函数名(参数)
虚函数定义
访问修饰符 virtual 返回类型 函数名(参数) //public virtual位置可换 一般public放前
重写虚函数/ 抽象函数
访问修饰符 override 返回类型 函数名(参数)
抽象函数 与 虚函数 区别
抽象函数
1) 父类只能声明, 不能定义主体。
2) 基类一定要重写抽象函数。
3) 调用子类定义的函数体
虚函数
1)父类一定要定义主体。
2)基类不一定要重写虚函数。
3) 如果子类有定义调用子类函数体,否则调用父类函数体。
使用:
一般来说,子类的实现方法都不同的时候用抽象函数方法。 子类的实现方法大部分相同的时候用虚函数方法。
目的 实现继承的多态,代码的重用,减少代码冗余。