如果我们有2个类孩子:父母,最新的是:
parent p = new parent;
parent p = new child;
child c = new parent;
答案 0 :(得分:2)
这可能对您有所帮助:
http://www.codeproject.com/Articles/22769/Introduction-to-Object-Oriented-Programming-Concep
所以,如果类Parent {} 和类Child:Parent {}
1)父p1 = new Parent(); //创建一个新的父 2)孩子c1 =新孩子(); //创建一个孩子 3)父p2 =新孩子(); //创建一个子项并将其转换为Parent,删除Parent没有的所有方法/属性 4)孩子c2 =新父母(); //不会编译,不能隐式转换
答案 1 :(得分:0)
所以我认为你问的是多态性的影响......在哪种情况下
int
你可以play with this on dotNetFiddle
输出
using System;
public class Program
{
public class Parent
{
public override string ToString()
{
return "I AM THE PARENT";
}
}
public class Child : Parent
{
public override string ToString()
{
return "I AM THE CHILD";
}
}
public static void Main()
{
Parent parent = new Parent();
Parent pAsChild = new Child();
//Child child = new Parent(); does not compile
Console.WriteLine("{0}", parent.ToString());
Console.WriteLine("{0}", pAsChild.ToString());
}
}