zoukankan
html css js c++ java
关于父子类方法的继承
父类一个virtual方法,一个普通方法;子类复写virtual,同时具有同名普通方法(使用new)。则Parent p = new Son();产生有趣结果:
class
Program
{
static
void
Main(
string
[] args)
{
Parent p
=
new
Son();
p.foo();
p.foo2();
Console.Read();
}
}
public
class
Parent
{
public
virtual
void
foo()
{
Console.WriteLine(
"
parent foo
"
);
}
public
void
foo2()
{
Console.WriteLine(
"
parent foo2
"
);
}
}
public
class
Son : Parent
{
public
override
void
foo()
{
Console.WriteLine(
"
Son foo
"
);
}
public
new
void
foo2()
{
Console.WriteLine(
"
Son foo2
"
);
}
}
我的理解是:p对象执行虚方法,则要到其Son子类去找复写方法;p对象执行普通方法,使用自身的方法即可——不用考虑子类的new方法。
查看全文
相关阅读:
预习十进制数的表示 & 非数值数据的编码表示 & 数据的宽度和储存 & 数据校验码*
预习原码补码移码
C语言||作业01 结构:通讯录
C语言寒假大作战04
C语言寒假大作战03
C语言寒假大作战02
C语言寒假大作战01
C语言||作业01 结构:通讯录
C语言寒假大作战04
C语言寒假大作战03
原文地址:https://www.cnblogs.com/Jax/p/1085254.html
最新文章
预习非数值数据的编码方式
2020-原码补码反码
C语言||作业01
C语言寒假大作战04
C语言寒假大作战03
C语言寒假大作战02
C语言寒假大作战01
C语言I作业12—学期总结
C语言I博客作业11
第三章预习
热门文章
预习非数值结构的编码表示
补码原码作业以及预习
C语言ll作业01
C语言寒假大作战04
C语言寒假大作战03
C语言寒假大作战02
C语言寒假大作战01
C语言I作业12—学期总结
C语言I博客作业11
预习运算方法和运算部件
Copyright © 2011-2022 走看看