c#访问this关键字和base关键字示例

 更新时间:2020年6月25日 11:38  点击:1362

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

调用基类上已被其他方法重写的方法。

注意:不能从静态方法中使用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();
        }
    }
}

[!--infotagslink--]

相关文章

  • c#访问this关键字和base关键字示例

    this关键字引用类的当前实例。静态成员方法中不能使用this关键字,this关键字只能在实例构造函数、实例方法或实例访问器中使用。base关键字用于从派生类中访问基类的成员。下面学习一下这二个关键字的使用方法...2020-06-25
  • javascript中this关键字详解

    本文介绍了javascript中this关键字,并将有关this的关键字知识列成一个list,会有助于我们理清思路,是一个很好的学习方法。强烈推荐。...2016-12-19
  • Java this关键字的使用案例详解

    这篇文章主要为大家介绍了Java this关键字的使用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助...2022-01-13