永发信息网

关键字this

答案:3  悬赏:0  手机版
解决时间 2021-07-18 19:53
  • 提问者网友:疯子也有疯子的情调
  • 2021-07-18 13:43

this可以代表类的一个实例来使用,那么如果一个类,实例化了两个实例,那再用this来代表类的实例,到底代表的是哪个实例???

比如student类,new了student1,student2两个实例,那么this.name到底是哪个实例的属性或者变量????

最佳答案
  • 五星知识达人网友:罪歌
  • 2021-07-18 14:28

实例化了两个对象 student1和student2,因为不可能在同一时间同时调用两个对象,所以你调试下,会发现不论两者是无参的还是有参的,当想走第一个对象student1的时候自然this.调用的是student1下的name,而不是student2下的对象,只有当你调用student2是它才会调用student2下的name,请调试下,便会一目了然!

全部回答
  • 1楼网友:梦中风几里
  • 2021-07-18 15:40

用哪个就是哪个。

  • 2楼网友:过活
  • 2021-07-18 15:23

你说的是继承吗?this 表示类的本身,C# 中 base 是表示继承的类。

public class a { public string Name { get; set; } }

public class b : a { public b() { this.Name = "b"; //这里表示 b 的 Name 属性 base.Name = "a"; //这里表示 a 的 Name 属性 }

public new string Name { get; set; } // 这里重新定义了 Name 已经覆盖了 a 的 Name 属性 }

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯