this关键字


this关键字代表当前对象,通过this关键字可以访问当前对象的成员。(当前对象的成员:自己本身的成员+从父类继承过来的所有的成员。)

this关键字可以访问:本类的所有成员和父类的非私有成员。父类的私有成员确实存在,但是就是访问不到。
this关键字仍然代表的是对象,通过它可以点出对象中的除了父类的私有成员以外的所有成员。
this关键字只能用在实例方法中。
作用:
     1)代表当前对象。在实例方法中使用this关键字就代表当前对象。通过this关键字可以点出本类的所有成员和父类的非私有成员。
     2)调用本类的其他的构造函数。在构造函数的后面的this代表调用本类的其他的构造函数。
 
 
base关键字

  显示的访问父类的非私有成员。可以访问子类对象中的父类的非私有成员。base不代表父类对象。因为压根就没有父类对象。通过它可以访问到父类的非私有成员。
通过this关键字访问当前对象的成员的时候:先找子类本身有没有这个成员,如果没有再找是否有从父类继承过来的。base关键字 直接就找父类中的成员。我们发现,base可以点出来的成员,通过this都可以点出来访问。
     建议:如果我们访问的确实是从父类继承过来的,那么建议用base关键字访问,这样方便代码的阅读和提高效率。只有在访问的成员确实是子类独有的,那么我们才用this关键字。
     作用:
      1)在实例方法中,通过base关键字可以显示的访问子类对象中的非私有的父类成员。
      2)调用父类的构造函数。在子类的构造函数的后面的base代表调用父类的构造函数。

this与base关键字的更多相关文章

  1. C#中base 关键字的作用

    引用:http://msdn.microsoft.com/en-us/library/hfw7t1ce.aspx base base 关键字用于从派生类中访问基类的成员: 调用基类上已被其他方法重写的 ...

  2. C#基础知识一之base关键字

    前言 其实很早就想写关于C#基础,总是自己给自己找借口,或者去网上搜搜看看,现在想想觉得自己有点懒惰...  作为开发人员,基础知识是重中之重的,只有巩固.理解.实践才能提高自身的技能.同时也希望通过 ...

  3. C#之base关键字

    1.base关键字用于从派生类中访问基类的成员. 2.调用基类上已被其他方法重写的方法. 3.指定创建派生类的实例是应调用基类的构造函数. 4.访问基类的公有成员和受保护成员,不能访问私有成员 5在静 ...

  4. base关键字

    base关键字      专门用来在子类访问父类成员 base.标识符:“.”调用父类同名属性.同名函数.构造函数 ()父类person public class Person { public Pe ...

  5. 【转】C#中base关键字的几种用法

    base其实最大的使用地方在面相对性开发的多态性上,base可以完成创建派生类实例时调用其基类构造函数或者调用基类上已被其他方法重写的方法.例如: 2.1关于base调用基类构造函数 public c ...

  6. (转)C#中base关键字的几种用法

    base其实最大的使用地方在面相对性开发的多态性上,base可以完成创建派生类实例时调用其基类构造函数或者调用基类上已被其他方法重写的方法.例如: 2.1关于base调用基类构造函数 public c ...

  7. new关键字 、this关键字、base关键字

    使用new,所做的三件事: 1. (类是引用对象,引用对象是在堆中开辟空间)在堆中开辟空间 2. 在开辟的堆空间中创建对象 3. 调用对象的构建函数 4. 隐藏父类成员:子类的成员可以与隐藏从父类继承 ...

  8. 抽象类和虚方法、base关键字

    微软官方文档:https://docs.microsoft.com/zh-cn/dotnet/csharp/programming-guide/classes-and-structs/abstract ...

  9. 【转】C#中base关键字的几种用法:base()

    转:https://blog.csdn.net/cplvfx/article/details/82982862 base其实最大的使用地方在面相对象开发的多态性上,base可以完成创建派生类实例时调用 ...

随机推荐

  1. Solr6.1.0Windows安装步骤

    一. 环境 solr 6.1.0  下载地址 http://archive.apache.org/dist/lucene/solr/6.1.0/ jdk 1.8 tomcat8 二. 安装solr到t ...

  2. 【译】使用Jwt身份认证保护 Asp.Net Core Web Api

    原文出自Rui Figueiredo的博客,原文链接<Secure a Web Api in ASP.NET Core> 摘要:这边文章阐述了如何使用 Json Web Token (Jw ...

  3. C# 把Div变为滚动条

    <div runat="server" style="overflow:auto;width:350px;height:200px" > <a ...

  4. Java中用Apache POI生成excel和word文档

    概述: 近期在做项目的过程中遇到了excel的数据导出和word的图文表报告的导出功能.最后决定用Apache POI来完毕该项功能.本文就项目实现过程中的一些思路与代码与大家共享.同一时候.也作为自 ...

  5. UML总结复习指南

    用例图 1. 參与者(Actor) 表示与您的应用程序或系统进行交互的用户.组织或外部系统.用一个小人表示.   2. 用例(Use Case)   用例就是外部可见的系统功能,对系统提供的服务进行描 ...

  6. hdu5353 Average

    Problem Description There are n soda sitting around a round table. soda are numbered from 1 to n and ...

  7. char a[] = "ab\0123\098"; 求a的长度

      原因: \0表示后面的字符是八进制(\ddd); 8进制=10进制( 10是'\n' 的ASCII码): 当\0后面有数字,且数字范围在0~7之间时,为8进制转义.如'\012': 当\0后面没有 ...

  8. matplotlib简介及安装

    官网介绍: Matplotlib is a Python 2D plotting library which produces publication quality figures in a var ...

  9. springMVC(3)---利用pdf模板下载

    springMVC(3)---利用pdf模板下载 在实际开发中,很多时候需要通过把数据库中的数据添加到pdf模板中,然后供客户下载,那我们该如何中呢? 本文主要内容是:用java在pdf模板中加入数据 ...

  10. qt调用simsimi api实现小黄鸡

    项目地址:https://github.com/racaljk/xiaojianji 好吧我把它命名为小贱鸡.,下面说一说他的实现. 由于官方的simsimi api需要收费,免费试用版有各种限制,所 ...