我想加入一个更概念化、不太依赖于代码的解释。
想象一辆福特汽车从生产线上滚出来。你没有生产线的访问权限,但你希望所有福特汽车都能在车尾添加一个额外的扰流板(展示时看起来更酷)。你该怎么做?在计算机世界里,除非你有进入福特工厂内部的原始生产线的权限,否则你不能随意往福特汽车上螺栓东西。现在你可以:引入扩展方法。
现在你可以这样做:
Ford hilux = new Ford();
hilux.DisplayRearFoiler(); // you can now do this even though you don't have access to the Ford source code.
你需要创建扩展方法。请参考上面的答案。