| 网站首页 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛 |
 
| 技术教程首页 | 开发语言 | WEB开发 | .NET技术 | 数据库 | 操作系统 | 网页制作 |
 
 

 

您现在的位置: 编程中国 >> 技术教程 >> .NET技术 >> C# >> C#技术资料 >> 正文
  ►  C# 中的关键字之:base、this
C# 中的关键字之:base、this
作者:佚名    阅读人次:……    文章来源:中国自学编程网    发布时间:2007-11-20    网友评论()条
 

  C# 中的关键字之:base、this。base 关键字用于从派生类中访问基类的成员:调用基类上已被其他方法重写的方法。

  指定创建派生类实例时应调用的基类构造函数。

  基类访问只能在构造函数、实例方法或实例属性访问器中进行。

  示例:

  在派生类中调用基类方法。

以下是引用片段:
  // base 关键字
  // 访问基类成员
  using System;
  public class BaseClass
  {
  protected string _className = "BaseClass";
  public virtual void PrintName()
  {
  Console.WriteLine("Class Name: {0}", _className);
  }
  }
  class DerivedClass : BaseClass
  {
  public string _className = "DerivedClass";
  public override void PrintName()
  {
  Console.Write("The BaseClass Name is {0}");
  //调用基类方法
  base.PrintName();
  Console.WriteLine("This DerivedClass is {0}", _className);
  }
  }
  class TestApp
  {
  public static void Main()
  {
  DerivedClass dc = new DerivedClass();
  dc.PrintName();
  }
  }
  /**//*

  控制台输出:

  The BaseClass Name is BaseClass

  This DerivedClass is DerivedClass

  */

  在派生类中调用基类构造函数。

以下是引用片段:
  // keywords_base2.cs
  using System;
  public class BaseClass
  {
  int num;
  public BaseClass()
  {
  Console.WriteLine("in BaseClass()");
  }
  public BaseClass(int i)
  {
  num = i;
  Console.WriteLine("in BaseClass(int {0})", num);
  }
  }
  public class DerivedClass : BaseClass
  {
  // 该构造器调用 BaseClass.BaseClass()
  public DerivedClass() : base()
  {
  }
  // 该构造器调用 BaseClass.BaseClass(int i)
  public DerivedClass(int i) : base(i)
  {
  }
  static void Main()
  {
  DerivedClass dc = new DerivedClass();
  DerivedClass dc1 = new DerivedClass(1);
  }
  }
  /**//*

  控制台输出:

  in BaseClass()

  in BaseClass(1)

  */

  注意点:

  从静态方法中使用 base 关键字是错误的。

  base  主要用于面向对象开发的对态这方面,在示例2中有体现。

  this 关键字引用类的当前实例。

[1] [2] 下一页

 

 
文章录入:编辑01    责任编辑:编辑01 
  • 上一篇文章:

  • 下一篇文章:

  •  
    相关文章
    原创地带
    24小时热门帖子