定义:父类对象存储子类对象。
特点:父类又不能访问子类成员。
如果需要则要显示转换。
例如:
Shape shape=new Shape();
Rectangle rectangle=new Rectangle(); //Rectangle是基类,Shape是父类。
shape=rectangle; //shape不能访问Rectangle类的成员,这是因为能否访问成员是根据变量声明决定的,shape是Shape类,决定了他只能访问自己的成员,而不能访问子类的成员。
//定义父类
class Shape
{
private string name;
public string Name { get => name; set => name = value; }
}
//定义子类1
class Rectangle:Shape
{
private double length;
private double width;
public double Length { get => length; set => length = value; }
public double Width { get => width; set => width = value; }
public Rectangle()
{