当前位置:  编程技术>.net/c#/asp.net

c#中this关键字与base关键字使用方法

    来源: 互联网  发布时间:2014-08-30

    本文导语:  this关键字引用类的当前实例。 静态成员方法中不能使用this关键字,this关键字只能在实例构造函数、实例方法或实例访问器中使用。 base关键字用于从派生类中访问基类的成员。   指定创建派生类实例时应调用的基类构造函...

this关键字引用类的当前实例。
静态成员方法中不能使用this关键字,this关键字只能在实例构造函数、实例方法或实例访问器中使用。

base关键字用于从派生类中访问基类的成员。
 
指定创建派生类实例时应调用的基类构造函数;
调用基类上已被其他方法重写的方法。

注意:不能从静态方法中使用base关键字,base关键字只能在实例构造函数、实例方法或实例访问器中使用。

例如:
访问关键字this和base关键字示例;
创建基类Person,包含两个数组成员name和age、一个具有两个参数的构造函数、一个虚函数GetInfo()以显示数据成员name和age的内容;
创建派生类Student,包含一个数据成员studentId,一个具有三个参数的派生类构造函数,并用:base调用基类构造函数、并重写所继承基类的虚方法GetInfo(),调用基类的方法显示name和age的内容。

例子:
 

代码示例:
namespace ConsoleApplication
{
    public class Person  //基类、等同于public class Person:Object
    {
        public string name;
        public uint age;
        public Person(string name,uint age)//基类的构造函数
        {
            this.name = name; //this 关键字引用类的当前实例
            this.age = age; //this 关键字引用类的当前实例
        }
        public virtual void GetInfo()
        {
            Console.WriteLine("Name: {0}",name);
            Console.WriteLine("Age:{0}",age);
        }
    }
    public class Student:Person//派生类
    {
        public string studentId;
        //派生类构造函数并用:base调用基类构造函数
        public Student(string name,uint age,string studentId):base(name,age)
        {
            this.studentId = studentId;
        }
        public override void GetInfo()
        {
            //调用基类方法
            base.GetInfo();
            Console.WriteLine("StudentId: {0}",studentId);
        }
    }
 
   public class Program
    {
        static void Main(string[] args)
        {
            Student objstudent=new Student("jeamsluu",99,"20140101011");
            objstudent.GetInfo();
            Console.ReadKey();
        }
    }
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C#中this的使用实例分析
  • C#中this指针的用法示例
  • 错误:将'const x'作为'x'的'this'实参时丢弃了类型限定问题解决
  • HTML教程 iis7站长之家
  • jquery $(this)和this的区别
  • 请问:this是什么?
  • 在jsp文件中, this代表的意思???
  • 内容管理系统 THIS
  • 在一个类中this.filled = 12312312;filled= 12312312;有什么区别
  • this 到底怎么用啊!!!救我!
  • how to use 'this' in EJB?
  • 这个THIS是指什么??
  • java中的“this”问题,请高手指教一二!
  • jQuery this 与$(this)的差别
  • 通过$(this)使用jQuery包装后的方法或属性
  • this 代表什么?
  • 请问:buttonsign定义为一个JButton,那么,buttonsign.addActionListener(this)是什么意思??
  • Semaphore was not declared in this scope
  • 初级问题,BangBean2.this是什么意思?其中BangBean2是个类
  • php this、self、parent有什么区别?
  • 关于this的简单的问题!!!!!!!!!
  • error: ‘CLOCK_VIRTUAL’ was not declared in this scope
  • can I do this?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3