微软平台技术学习笔记

学习,思考,实践

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  1. 构造函数
先执行父类的构造函数,再执行子类的构造函数的(废话,否则继承什么啊)

 2.override

当子类override父类方法,创建子类对象时,只会实现子类方法。父类的方法根本就没有实现。

不论怎么引用,怎么转换,都只能调用子类方法(废话,对象里根本就没有父类方法,怎么调用也没用啊)

例子: 

父类 

 class BaseClass
    {
        
protected BaseClass()
        {
            Console.WriteLine(
"Create Base class");
        }

        
public virtual void DoWork()
        {
            Console.WriteLine(
"Do base work");
        }

    }

 子类

class DerivedClass:BaseClass
    {
        DerivedClass()
        {
            Console.WriteLine(
"Create derived class");
        }

        
public override void DoWork()
        {
            Console.WriteLine(
"Do derived work");
        }
}

 Main

static void Main()
        {
            DerivedClass child1 
= new DerivedClass();
            
//output
            
//Create Base class
            
//Create derived class
            BaseClass child2 = new DerivedClass();
            BaseClass child3 
= (BaseClass)child1;
            child1.DoWork();
//Do derived work
            child2.DoWork();//Do derived work
            child3.DoWork();//Do derived work
            Console.Read();

        } 

posted on 2005-12-03 17:59  旴江老段  阅读(169)  评论(0)    收藏  举报