继承是子类继承父类的成员,这样方便我们对与类的简写简化代码量。有助于我们写代码和使用代码,对我们的过程简化。
在新建类中写如父类的内容例如哺乳动物
class Mammal
{
public virtual void Breath()
{
Console.WriteLine(name+"is breathing....");
}
public void SuckleYoung()
{
Console.WriteLine(name+"is SuckleYoung....");
}
}
我们可以在子类例如马,鲸鱼。
马类
class Horse:Mammal
{
public void Talk()
{
Console.WriteLine("horse is talking");
}
public override void Breath()
{
Console.WriteLine( "马正在呼吸....");
}
}
鲸鱼类
class Whale:Mammal
{
public void run()
{
Console.WriteLine(name + "正在喷水。");
}
}
这样我们在输出类中可以在马类或鲸鱼类中输出父类中哺乳动物的breath和suckleYoung这样就不用在马类和鲸鱼类中都输入breath和suckleYoung
这样就简化了我们的代码还有内存量。
类的赋值
类的赋值
父类可以引用子类对象。
父类引用只能调用子类继承父类的方法,父类引用不能调用子类独有的方法。
Mammal newMammal = new Horse("Bilu");
newMammal.SuckleYoung();
newMammal.Breath();
string name=newMammal.getName();
Console.WriteLine("newMammal 的名字为:"+name);
try
{
子类引用不能直接赋值父类对象,除非将父类对象进行强制转换
编译ok,运行异常
Horse littleHorse = (Horse)new Mammal("neddy");
littleHorse.Breath();
littleHorse.SuckleYoung();
littleHorse.getName();
littleHorse.Trot();
}
catch(Exception ex)
{
Console.WriteLine(ex.Message);
}
父类的内容
public Mammal(string mammalName)
{
name = mammalName;
}
public void Talk()
{
Console.WriteLine("mammal talking");
}
然后在子类中输入
public Horse(string name):base(name)
{
}调用父类中的名字