The Programming Language Idioms
The Programming Language Idioms Click below to go directly to a specific section: 重载与重写 | 静态构造函数 | 只读代理 | 同步代理 | 资源管理 | 构造函数中的虚函数 强制针对接口编程 | 抗变与协变 | friend interface | ctor vs. setter | 杂项 重载与重写 问题 日常讨论中,术语的不统一带来些许混乱 惯用的表达 overload 重载 函数名称相同,参数不同(严格的定义还有其它一些限制) 静态决议 override 重写(覆写,覆盖,改写) 子类重新定义父类定义过的虚函数(个别语言允许返回值,访问级别可以不同) 动态决议 示例 class Base { } class Derived:Base { } class Client { void Test(Base obj){ Console.WriteLine("base"); } void Test(Derived obj){ Console.WriteLine("derived"); } static void Main( string [] args) { Base obj = new Derived(); new Client().Test(obj); //输出“base” } } 静态构造函数