this关键字之一个有趣的用法
this关键字
1.首先一个用处就是代表当前类的对象。
2.当我们对构造函数进行重载的时候代码如下:
public class Class1
{
public string Name { get; set; }
public int Age { get; set; }
public string Grade { get; set; }
public int English { get; set; }
public int Math { get; set; }
public int Chinese { get; set; }
public Class1(string name,int age,string grade,int english,int math,int chinese)
{
this.Name = name;
this.Age = age;
this.Grade = grade;
this.English = english;
this.Math = math;
this.Chinese = chinese;
}
public Class1(string name,int english, int math, int chinese)
{
this.Name = name;
this.English = english;
this.Math = math;
this.Chinese = chinese;
}
public Class1(string name, int age)
{
this.Name = name;
this.Age = age;
}
public Class1()
{
}
}
以上代码完全没有问题,但是不免有些代码冗余的现象。我们可以使用this关键字
public class Class1
{
public string Name { get; set; }
public int Age { get; set; }
public string Grade { get; set; }
public int English { get; set; }
public int Math { get; set; }
public int Chinese { get; set; }
public Class1(string name,int age,string grade,int english,int math,int chinese)
{
this.Name = name;
this.Age = age;
this.Grade = grade;
this.English = english;
this.Math = math;
this.Chinese = chinese;
}
public Class1(string name,int english, int math, int chinese):this(name,0,"c",english,math,chinese)
{
//this.Name = name;
//this.English = english;
//this.Math = math;
//this.Chinese = chinese;
}
public Class1(string name, int age)
{
this.Name = name;
this.Age = age;
}
public Class1()
{
}
}
即this的第二个用处为在类中显式的调用本类的构造函数
this关键字之一个有趣的用法的更多相关文章
- 关于Javascript语言中this关键字(变量)的用法
最近很多 Javascript初学者朋友总在问: Javascript 的this 关键字的用法.我在这里索性总结一下 this关键字的用法. this 关键字是面向对象编程语言中的一个重要概念!在J ...
- Java关键字之static的典型用法分析
static关键字是java中非常重要的一个关键字,用的好的话可以提高程序的运行性能,优化程序结构.接下来我们来总结一下static关键字及其用法.1.static变量 static变量也称作静态变量 ...
- Java继承:super关键字、构造器、final用法
一.继承 继承好处 1.提高代码的重用性 2.提高代码的扩展性和维护性 3.为多态打下了基础 继承类型 继承子类创建对象的过程 二.super关键字的使用 理解:super代表父类的引用,用于访问父类 ...
- jqeruy的append一个有趣的用法(挪移控件位置)
使用:$(放置的容器).append($(需要迁移的控件)) 需求:列表中点击编辑可以在无刷修改 以前的方法是在列表中的每条数据直接放置控件.但是这个地区选择控件是服务器自定义控件不可以放置在列表的循 ...
- read table 时关键字TRANSPORTING NO FIELDS的用法
关键字TRANSPORTING NO FIELDS 用于read table with key 一般用于等读取内表的时候,只是判断该内表中是否有次数据 不需要读取到工作区中. READ TABLE g ...
- php static 关键字在 函数中的用法
至于在类中声明为 static 的属性和方法,这里不描述php中的变量作用范围的另一个重要特性就是静态变量(static 变量).静态变量仅在局部函数域中存在且只被初始化一次,当程序执行离开此作用域时 ...
- 阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第5节 final关键字_1_final关键字概念与四种用法
英文的含义和程序中的含义是相同的.最终的,不可改变的
- js中关键字 const , let , var 的用法区别
1.const定义的变量不可以修改,而且必须初始化. 2.var定义的变量可以修改,如果不初始化会输出undefined,不会报错. 3.let是块级作用域,函数内部使用let定义后,对函数外部无影响 ...
- C#中的using关键字用法总结
C#中的using关键字主要有两种用法: 1.using作为指令: (1)用于将命名空间引入当前单元,例如:using System.Windows.Forms; (2)为现有的命名空间创建一个别名, ...
随机推荐
- MySQL 行子查询
MySQL 行子查询 行子查询是指子查询返回的结果集是一行 N 列,该子查询的结果通常是对表的某行数据进行查询而返回的结果集. 一个行子查询的例子如下: SELECT * FROM table1 WH ...
- mysql window下tmpdir空间耗尽
修改my.ini或my-default.ini文件[mysqld]下方配置 tmpdir = D:/tmp
- apache2.2 虚拟主机配置详解
一.修改httpd.conf 打开appserv的安装目录,找到httpd.conf文件,分别去掉下面两行文字前面的#号. #LoadModule vhost_alias_module modules ...
- 【PHP】新浪、淘宝的地区 API调用
/推荐使用新浪的: $ch = curl_init(); $url = "http://ip.dpool.sina.com.cn/iplookup/iplookup.php?format=j ...
- 禁止多行文本框textarea拖拽
禁止多行文本框textarea拖拽: textarea { resize: none; } resize这个是用于元素缩放,它可以取以下几个值: none 默认值 both 允许水平方向及垂直方向缩放 ...
- SQL通过xml插入批量数据
存储过程: CREATE PROCEDURE [dbo].[UP_PurchasexxxCard] @OrderInfo XMLASBEGIN SET NOCOUNT ON; DECLARE @Dat ...
- day03_javaEE四成结构
- Valve开源了Direct3D到OpenGL的转译层,方便开发者迁移游戏到Linux(面向游戏玩家的六款最佳 Linux 发行版)
Valve开源了Direct3D到OpenGL的转译层,方便开发者迁移游戏到Linux:https://github.com/ValveSoftware/ToGL Valve SteamBox主机系统 ...
- 一本QT书,连接MySQL图文并茂
http://qtdebug.com/index.html http://qtdebug.com/DB-AccessMySQL.html
- GitHub 如何基於 Node.js 和 Chromium 開發 Atom?
看到回答里, 多数都没有回答到点子上, 还有些给了非常主观的意见而没有给出实际结论和分析过程. 题主的问题有四个: 1. Github 如何基于 Node.js 和 Chromium 开发 Atom? ...