jicheng.cs
资源名称:Visual.rar [点击查看]
上传用户:yiyuerguo
上传日期:2014-09-27
资源大小:3781k
文件大小:1k
源码类别:
C#编程
开发平台:
Others
- /*
- * Created by SharpDevelop.
- * User: hyperly
- * Date: 2005-5-22
- * Time: 0:03
- *
- * To change this template use Tools | Options | Coding | Edit Standard Headers.
- */
- using System;
- class myApp
- {
- public class A
- {
- public virtual void Fun1(int i)
- {
- Console.WriteLine(i);
- }
- public void Fun2(A a)
- {
- a.Fun1(1);
- Fun1(5);
- }
- }
- public class B: A
- {
- public override void Fun1(int i)
- {
- base.Fun1(i+1);
- }
- }
- public static void Main()
- {
- B b=new B();
- A a=new A();
- // a.Fun2(b)是指先执行A类下的Fun2函数
- //Fun2函数下第一步是a.Fun1(1);
- //但实际参数是a也就是执行a.Fun1(1);
- //那b.Fun1(1)函数是在B类当中重载过的
- //其内容是base.Fun1(i+1);
- //也就是执行Fun1(1+1)
- //结果是2
- //然后执行Fun1(5)
- //结果是5
- a.Fun2(b);
- // b.Fun2(a)是指先执行B类下的Fun2函数
- // 可B类本身就没有Fun2函数 只有执行它的基类的Fun2函数
- //但实际参数是a也就是执行a.Fun1(1);
- //结果是1
- //然后执行Fun1(5) 注意这里的Fun1(5)实际上是b.Fun1(5)
- //实际执行的结果是base.Fun1(5+1);
- //结果是6
- b.Fun2(a);
- Console.ReadLine();
- }
- }