[你必须知道的.Net]读书笔记--override与new在继承中的区别
2009-05-08 15:19
253 查看
前言:
这本书拿到手已经好长时间了,但由于种种原因一直没读完,也许是我太懒了,应该好好反省自我检讨一下。
所谓“书读百遍,其义自见”,虽然糊里糊涂做web开发六七年了,用.net也3年出头,但总觉得自己还是一个.net新手,很多东西只知道怎么用,但不知道为什么?
虽然老赵曾经讲过的一个观点我也很赞同,原话已经记不清了,大意是说:很多数学上的公理公式,只要前人(或自己)证明过是对的,以后再用时,谁会一次次的再重复去证明,直到证明结果弄对了再拿来用?但是有些问题还要是有比较深刻理解的,否则经常会在开发过程中遇到一些莫名其妙的问题,不明白背后的真相,自个儿费劲猜个半天,还是不知所以然,弄得信心全无。
在当今新技术不断发展的今天,除了及时关注.net的发展,还是有必要静下心来好好整理整理,定期把工作中遇到的各种问题(特别是技术上模凌两可,只知其然但不知其所以然的问题)弄个究竟,长
期坚持下去,相信必有收获。
1.override与new在继续中的差异
先上一段测试代码
Code
using System;
namespace OverrideWeb
{
public partial class _Default : CommPage
{
protected override void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
Response.Write("Derived Page_Load();<br/>");
}
}
}
问题就来了,如果这里的override改成new或忘记了写(不写的情况下,系统默认为new关键字),最后运行时子类_Default中的Page_Load不会被执行!大家可以自己去试一下
这本书拿到手已经好长时间了,但由于种种原因一直没读完,也许是我太懒了,应该好好反省自我检讨一下。
所谓“书读百遍,其义自见”,虽然糊里糊涂做web开发六七年了,用.net也3年出头,但总觉得自己还是一个.net新手,很多东西只知道怎么用,但不知道为什么?
虽然老赵曾经讲过的一个观点我也很赞同,原话已经记不清了,大意是说:很多数学上的公理公式,只要前人(或自己)证明过是对的,以后再用时,谁会一次次的再重复去证明,直到证明结果弄对了再拿来用?但是有些问题还要是有比较深刻理解的,否则经常会在开发过程中遇到一些莫名其妙的问题,不明白背后的真相,自个儿费劲猜个半天,还是不知所以然,弄得信心全无。
在当今新技术不断发展的今天,除了及时关注.net的发展,还是有必要静下心来好好整理整理,定期把工作中遇到的各种问题(特别是技术上模凌两可,只知其然但不知其所以然的问题)弄个究竟,长
期坚持下去,相信必有收获。
1.override与new在继续中的差异
先上一段测试代码
Code
using System;
namespace OverrideWeb
{
public partial class _Default : CommPage
{
protected override void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
Response.Write("Derived Page_Load();<br/>");
}
}
}
问题就来了,如果这里的override改成new或忘记了写(不写的情况下,系统默认为new关键字),最后运行时子类_Default中的Page_Load不会被执行!大家可以自己去试一下
相关文章推荐
- 读你必须知道的.NET-override,new
- 你必须知道的.Net 读书笔记----new 关键字 和const && readonly
- 读书笔记(一):【你必须知道的.NET】(1):【大话String】
- [你必须知道的.Net]读书笔记--浅clone与深clone
- 你必须知道的.net中把new说透中答案
- 关于抽象、继承中virtual、abstract、override、new关键字的区别
- .net中new与override的区别
- 《必须知道的.net》读书笔记(一)
- [你必须知道的.NET]第二十七回:interface到底继承于object吗?
- 读书笔记(一):【你必须知道的.NET】(0):【开篇】
- 继承类中override和new的区别
- [你必须知道的.NET]第十五回:继承本质论
- 读书笔记(一):【你必须知道的.NET】(1):【大话String】
- 《必须知道的.net》读书笔记(二)
- 【一次性搞懂】继承与接口的区别,以及继承中的override与new的区别
- 读书笔记(一):【你必须知道的.NET】(0):【开篇】
- C# Tips:在继承中,new 与 override 的区别
- 你必须知道的.net学习总结之继承
- [你必须知道的.NET]第十五回:继承本质论 观后感
- 《必须知道的.net》读书笔记(三)