Uinty3D学习基本知识,继承
今天大家一起来学习一下C#中的继承类
1.继承:
(
1
)
继承提供了创建新类的一种方法,继承对开发者来说就是代码共享。
(2)通过继承创建的子类是作为另一个类的扩充或修正所定义的一个类。
(父类)中继承所有方法和变量。
(4)子类和超类之间是特化与范化的关系。
子类的声明
:父类{子类体}
3. 子类可以使用父类的protected和public可见的变量和方法,就像这些变量和方法是
自己定义的一样。私有成员和方法其实已经被继承了,但是它们却不可以被访问,因
为私有成员和方法只能被声明它们的类中才可访问,所以看上去像是没有被继承。
4. C# 中,如果类声明时没有声明父类,那么缺省为Object 类的子类。C#中的所有类都
System.Object类的子类。
5. C#中子类只能继承一个父类,但一个基类可以有多个直接派生类。继承是可以传递的
实例
class Car
{
int color;
int door;
int speed;
public void AddOil() { }
}
class TrashCar : Car
{ }
class MyApp
{
static void Main()
{
TrashCar myCar = new TrashCar();
myCar.AddOil();
}
}
6.Sealed
修饰符,此修饰符会阻止其他类从该类继承。
sealed
{ int test;
public void Sum(int i,int j)
{
int sum = i + j;
Console.WriteLine("I am A ,my sum ={0}",sum);
}
}
class B : A
{
public void Minus(int i,int j)
{
int minus = i - j;
Console.WriteLine("I am B ,my minus ={0}", minus);
this.Sum(3, 4); //编译器会报错
}
}
7.派生类的建立需要注意:
派生类会继承基类除了构造函数和析构函数的所有成员。
派生类调用构造函数时,会先调用基类的构造函数。默认调用没有参数的构造函数。
用base关键字显式调用基类构造函数(如果基类定义了带有参数的构造函数,那么此构造函数必须被执行,且在派生类中实现该构 造函数,此时我们可以使用base关键字)
8.方法隐藏
如果子类方法的方法名和基类的方法名相同时,系统将隐藏基类同名方法,自动调用子类的同名方法