本章内容:
继承
System.Object
声明继承
继承的类型成员(构造函数、方法和属性)
继承允许我们根据一个类来定义另一个类,允许使用基类的成员、公有(public)代码。
public class 动物
{
}
public class 狗 : 动物
{
}
public class 程序
{
public static void Main()
{
}
}
我声明了名为动物的类。又声明了另一个名为 "狗 "的类,使用带有冒号的继承语法:,指定 "狗 "类继承于 "动物 "类。
public class 狗 : 动物
动物类称为基类。狗类被称为派生类,常被称为 "子类(subclass) "或child class。狗是一种动物,但动物也可能是狗。
public class 猫 : 动物
{
}
public class 狮子 : 猫
{
}
基类和派生类之间形成了继承层次结构。在C#中,继承层次结构的数量没有限制。
练习:定义一个名为载具的类。定义另一个名为车的类,继承自载具。
public class 程序
{
public static void Main()
{
}
}
之前提到,继承类型形成一个树状的概念,称为继承层次。重点是,所有的树都有root,这个root就是System.Object
using System;
public class 程序
{
public static void Main()
{
Object root = new Object();
Console.WriteLine(root.ToString());
}
}
声明了一个名为root的变量,类型为Object,程序类默认继承了Object。
下面的声明也一样。
public class 程序
{
}
public class 程序 : Object
{
}
不需要指定Object,编译器强制执行。
创建的每个类都有root,root就是System.Object。Object也是object的别名,可以交替使用。
练习:定义一个名为 电子 的类,继承自System.O