protected 子类可以访问父类
产生随机数:
Random r=new Random( );
int rand=r.Next(1,45); // 产生在1--44之间的随机数
//类的多态性
//这个简单例子说明可以通过父类调用子类,把所有的子类都当做父类处理,写成通用的代码,再进行强制转换到子类处理
namespace convert
{
class Program
{
static void Main(string[] args)
{
Person [] people=new Person[10];
Random num = new Random( );
for (int i = 0; i < 10;i++ )
{
int rand = num.Next(1, 6);
switch(rand){
case 1:
people[i] = new Vivi();
break;
case 2:
people[i] = new Ququ();
break;
case 3:
people[i] = new Evil();
break;
case 4:
people[i] = new Wea();
break;
case 5:
people[i] = new Ewi();
break;
default:
people[i] = new Person();
break;
}
}
for (int i = 0; i < 10;i++ )
{
if (people[i] is Vivi){
((Vivi)people[i]).showvivi();
}
else if (people[i] is Ququ)
{
((Ququ)people[i]).showququ();
}else if(people[i] is Evil){
((Evil)people[i]).showevil();
}
else if (people[i] is Wea)
{
((Wea)people[i]).showwea();
}
else if (people[i] is Ewi)
{
((Ewi)people[i]).showpeewi();
}
}
Console.ReadKey();
}
// 父类与子类的关系 5个子类
public class Person
{
public void showpeson()
{
Console.WriteLine("hello,i'm person");
}
}
public class Vivi:Person
{
public void showvivi()
{
Console.WriteLine("hello,i'm vivi");
}
}
public class Ququ : Person
{
public void showququ()
{
Console.WriteLine("hello,i'm Ququ");
}
}
public class Evil : Person
{
public void showevil()
{
Console.WriteLine("hello,i'm Evil");
}
}
public class Wea : Person
{
public void showwea()
{
Console.WriteLine("hello,i'm Wea");
}
}
public class Ewi : Person
{
public void showpeewi()
{
Console.WriteLine("hello,i'm ewi");
}
}
}
}