
class
{
string name;
public string Name
{
get {
return name; }
set {
name = value; }
}
int age;
public int Age
{
get {
return age; }
set {
age = value; }
}
public virtual void cry()
{
Console.WriteLine("我是宠物,我叫{0},我{1}岁了",this.name,this.age);
}
public virtual void eat()
{
Console.WriteLine("我是爱吃的宠物");
}
public Pet() {
}
public Pet(string name, int age)
{
this.name = name;
this.age = age;
}
}
class Dog:Pet
{
public override void cry()
{
Console.WriteLine("我是狗,我叫{0},我{1}岁了",this.Name,this.Age);
}
public override void eat()
{
Console.WriteLine("我喜欢啃");
}
public void GuardEntrance()
{
Console.WriteLine("我喜欢看门,呵呵");
}
public Dog() {
}
public Dog(string name, int age) : base(name, age) {
}
}
class Cat:Pet
{
public override void cry()
{
Console.WriteLine("我是猫,我叫{0},我{1}岁了",this.Name,this.Age);
}
public override void eat()
{
Console.WriteLine("我喜欢喝");
}
public void GuardEntrance()
{
Console.WriteLine("我喜欢看书,");
}
public Cat() {
}
public Cat(string name, int age) : base(name, age) {
}
}
Pet pet1 = new Dog("小黄",3);
pet1.cry();
pet1.eat();
((Dog)pet1).GuardEntrance();
Pet pet2 = new Cat("小白", 2);
pet2.cry();
pet2.eat();
((Cat)pet2).GuardEntrance();