我不太明白 Father person; person= new Son();这句话什么意思? 30
请解释下Fatherperson;person=newSon();这句话的意思,详细些~注:Father是父类,Son是子类我不明白重写为何这么写调用的是子类,而补充写调...
请解释下 Father person;
person= new Son();
这句话的意思,详细些~
注:Father是父类,Son是子类
我不明白重写为何这么写调用的是子类,而补充写调用的是父类
具体代码如下:
//不重写的
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication10
{
class Father
{
public void Say()
{
Console.WriteLine("父类");
}
}
class Son:Father
{
public void Speak()
{
Console.WriteLine("子类");
}
}
class Program
{
static void Main(string[] args)
{
Father person;
person= new Son();
person.Say();
Console.ReadKey();
}
}
}
//重写的
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication10
{
class Father
{
public virtual void Say()
{
Console.WriteLine("父类");
}
}
class Son:Father
{
public override void Say()
{
Console.WriteLine("子类");
}
}
class Program
{
static void Main(string[] args)
{
Father person;
person= new Son();
person.Say();
Console.ReadKey();
}
}
}
求解释~ 展开
person= new Son();
这句话的意思,详细些~
注:Father是父类,Son是子类
我不明白重写为何这么写调用的是子类,而补充写调用的是父类
具体代码如下:
//不重写的
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication10
{
class Father
{
public void Say()
{
Console.WriteLine("父类");
}
}
class Son:Father
{
public void Speak()
{
Console.WriteLine("子类");
}
}
class Program
{
static void Main(string[] args)
{
Father person;
person= new Son();
person.Say();
Console.ReadKey();
}
}
}
//重写的
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication10
{
class Father
{
public virtual void Say()
{
Console.WriteLine("父类");
}
}
class Son:Father
{
public override void Say()
{
Console.WriteLine("子类");
}
}
class Program
{
static void Main(string[] args)
{
Father person;
person= new Son();
person.Say();
Console.ReadKey();
}
}
}
求解释~ 展开
1个回答
展开全部
Father person;person= new Son();实例化子类,不重写的例子person.Say();子类中没有Say()方法,当然就访问其父类了,而重写的例子中person.Say();就直接访问子类的Say()方法了。
更多追问追答
追问
那Father person=new Father();和Father person=new Son();输出结果相同,那区别是啥
追答
父亲会唱歌,生了儿子,儿子继承了父亲的才能也会唱歌,你要儿子唱歌,儿子当然跟父亲唱一样的歌,你说儿子会唱歌父亲也会唱歌,有什麼区别?.....
後来儿子学会了跳舞,父亲就不会跳舞了.....
但由於时代潮流在变,以前父亲唱的的经典歌曲,儿子不想唱经典歌曲,所以儿子自创摇滚歌曲,你再让儿子唱歌,儿子唱的就是摇滚歌。跟父亲不一样了....
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询