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方法。
查看全文
相关阅读:
Windows Server 2012上PHP运行环境搭建的简易教程(Win08适用)
Windows 8.1 系统ISO镜像下载或自Win8应用商店升级方法
dojo布局(layout)
dojo创建tree
Postgres SQL学习笔记
PostGIS ShapeFile 导入数据
利用 PortableBasemapServer 发布地图服务
Fortran 笔记
ArcMap 操作笔记
gdal编译C#开发版本
原文地址:https://www.cnblogs.com/Jax/p/1085254.html
最新文章
输出5个大写英文字母的组合,并写入到txt文档中,随机数法。
C语言,产生一组数字,并将其写入txt文档中
像素与分辨率详解(转)
Arcgis Engine添加license权限方法,报There is no Spatial Analyst license currently available or enabled错误
无法嵌入互操作类型“ESRI.ArcGIS.Controls.ControlsAddDataCommandClass”
未能解析引用的程序集……因为它对不在当前目标框架……
ArcGIS10以上:ArcGIS version not specified. You must call RuntimeManager.Bind before creating any ArcGIS
VS2010快速生成代码模板功能介绍
ArcGIS For Flex学习之Layers---控制图层的显示与否(利用DataGrid)
ArcGIS For Flex学习之Layers---Use Layer Definitions
热门文章
设置vs2010代码区的豆沙绿背景色(转载)
ArcGIS数据生产与精细化制图之中国年降水量分布图的制作(转载)
风雨20年所积累的20条编程经验
UI/UE/ID/UED/UCD的区别
想要提高网页转换率?试试这16 个UI 秘诀
加速Web开发的9款知名HTML5框架
用户体验的13条金科玉律
C#语法糖(Csharp Syntactic sugar)大汇总
一些非常有价值的资料网站
JavaScript可否多线程? 深入理解JavaScript定时机制
Copyright © 2011-2022 走看看