C# this和base的使用_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > C# this和base的使用

C# this和base的使用

 2014/12/5 18:13:59  e心e意  程序员俱乐部  我要评论(0)
  • 摘要:namespaceTHISORBASE{//参考地址:http://blog.sina.com.cn/s/blog_7300c7d90100rs20.html/*这个时候,派生类和基类的_str被区分开了,*派生类定义了一个自己_str(注意定义的时候,*请加上new关键字,虽然不加也可以编译通过,*但是推荐加上),这样this真正的价值得到了体现。*this,指向到了派生类对象的自己定义的字段。*base才是指向的基类的字段。这就是C#.net里this和base的真正意义
  • 标签:C# 使用 ASE
namespace THISORBASE
{
    //参考地址:http://blog.sina.com.cn/s/blog_7300c7d90100rs20.html
    /*这个时候,派生类和基类的_str被区分开了,
     * 派生类定义了一个自己_str(注意定义的时候,
     * 请加上new关键字,虽然不加也可以编译通过,
     * 但是推荐加上),这样this真正的价值得到了体现。
     * this,指向到了派生类对象的自己定义的字段。
     * base才是指向的基类的字段。这就是C#.net 里 this和base的真正意义*/
    public class Father
    {
        protected string _str = "父亲对象字符串的初始值";
        public Father()
        {
            this._str = "父亲对象构造函数该变量字符串初始值";
        }
    }
    public class Son : Father
    {
        private new string _str = "子类对象字符串初始值";
        public Son()
        {
            base._str = "子类对象构造函数修改父类初始化";
        }
        public string PrintStr_this()
        {
            return this._str;
        }
        public string PrintStr()
        {
            return _str;
        }
        public string PrintStr_base()
        {
            return base._str;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Son myobj = new Son();
            Console.WriteLine(myobj.PrintStr_this ());
            Console.WriteLine(myobj .PrintStr() );
            Console.WriteLine(myobj .PrintStr_base() );
            Console.Read();
        }
    }
}

 

发表评论
用户名: 匿名