this是什么意思
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/12 13:47:06 体裁作文
篇一:c#this 的使用方法
this(C# 参考)
this 关键字引用类的当前实例。
以下是 this 的常用用途:
? 限定被相似的名称隐藏的成员,例如:
复制代码
public Employee(string name, string alias)
{
this.name = name;
this.alias = alias; }
? 将对象作为参数传递到其他方法,例如:
复制代码
CalcTax(this);
? 声明索引器,例如:
复制代码
public int this [int param]
{
get { return array[param]; }
set { array[param] = value; }
}
由于静态成员函数存在于类一级,并且不是对象的一部分,因此没有 this 指针。在静态方法中引用 this 是错误的。
示例
在本例中,this 用于限定 Employee 类成员 name 和 alias,它们都被相似的名称隐藏。this 还用于将对象传递到属于其他类的方法 CalcTax。
复制代码
// keywords_this.cs
// this example
using System;
class Employee
{
private string name;
private string alias;
private decimal salary = 3000.00m;
// Constructor:
public Employee(string name, string alias)
{
// Use this to qualify the fields, name and alias:
this.name = name;
this.alias = alias;
}
// Printing method:
public void printEmployee()
{
Console.WriteLine("Name: {0}\nAlias: {1}", name, alias); // Passing the object to the CalcTax method by using this: Console.WriteLine("Taxes: {0:C}", Tax.CalcTax(this)); }
public decimal Salary
{
get { return salary; }
}
}
class Tax
{
public static decimal CalcTax(Employee E)
{
return 0.08m * E.Salary;
}
}
class MainClass
{
static void Main()
{
// Create objects:
Employee E1 = new Employee("John M. Trainer", "jtrainer");
// Display results:
E1.printEmployee();
}
}
输出
Name: John M. Trainer
Alias: jtrainer
Taxes: $240.00
比如你的类中有一个成员变量为a。在你的成员函数中有定义了一个局部变量a。此时就必须使用this关键字来指示类的成员。也就是类的成员变量a写为this.a
其实这个很容易理解的,你写的那些响应函数,说白了都是类方法。
在程序运行后,可能会被很多这个类的实例(对象)来调用。。。那么请问,系统怎么知道调用这个类方法的是谁?是哪个对象?
所以,这时this就发挥它的作用啦。
每当一个对象调用这个类方法的时候,系统就会自动做这个对象的指针赋给this指针。
this指当前类
比如在一个AAA类里有一个aaa的方法
在这个AAA类中调用这个aaa方法就可以用this.aaa
如果是在别的类中就要实例化一个对象来调用这个方法
AAA a=new AAA();
a.aaa;
在静态的方法中不能使用this
如main方法就是一个静态方法
this是保留的指针。指向当前对象。它的好处就是在编译期就可以获得对象的地址。比如一个类中有个成员类。成员类需使用上层类的函数,就可以把this传到成员类中。
this 关键字引用类的当前实例
以下是调用本内中的构造函数,用this
using System;
namespace CallConstructor
{
public class Car
{
int petalCount = 0;
String s = "null";
Car(int petals)
{
petalCount = petals;
Console.WriteLine("Constructor w/int arg only,petalCount = " + petalCount);
}
Car(String s, int petals)
: this(petals) //第一个this的意思是调用Car(int petals)方法的属性petals。
{
//第二个this的意思是实例化Car(String s, int petals)方法中的参数s(this.s = s)。
this.s = s;
Console.WriteLine("String & int args");
}
Car()
: this("hi", 47) //第三个this是调用Car(String s, int petals)方法的两个参数并传参。
{
Console.WriteLine("default constructor");
}
public static void Main()
{
Car x = new Car();
Console.Read();
}
}
}
//结果:
//Constructor w/int arg only,petalCount = 47
//String & int args
//default constructor
永远记得:this出现了,代表它所在的类的对象
http://zhidao.baidu.com/question/44458833.html?si=1
c#中 this保留字的用法
2007年03月21日 星期三 21:31
this 关键字将引用类的当前实例。静态成员函数没有 this 指针。this 关键字可用于从构造函数、实例方法和实例访问器中访问成员。
以下是 this 的常用用途:
限定被相似的名称隐藏的成员,例如:
public Employee(string name, string alias)
{
this.name = name;
this.alias = alias;
}
将对象作为参数传递到其他方法,例如:
CalcTax(this);
声明索引器,例如:
public int this [int param]
{
get
{
return array[param];
}
set
{
array[param] = value;
}
}
在静态方法、静态属性访问器或字段声明的变量初始值设定项中引用 this 是错误的。
示例
在本例中,this 用于限定 Employee 类成员 name 和 alias,它们都被相似的名称隐藏。this 还用于将对象传递到属于其他类的方法 CalcTax。
// keywords_this.cs
// this example
using System;
public class Employee
{
public string name;
public string alias;
public decimal salary = 3000.00m;
// Constructor:
篇二:英语骂人的短语
What the hell is going on with that god damn dirty language stuff?那个满口脏话的家伙他妈的到底在干什么?
Fuck you the fucking fucker!你他妈的真混蛋!
Get the fucking my way!他妈的给我滚!
What the hell did you see that?我靠,你看到了吗?
What the hell is wrong with you?我靠,你到底怎么了?
You're fucking piece of shit! 你他妈的就是一砣屎,你他妈的什么也不是!
The fucking mofo, I want to kill you!Cocksucker!你妈的,我要杀了你!贱人!
我看过的最牛的英语骂人句子:
You cheap, lying, no good, rotten, floor flushing, low life, snake licking, dirt eating, inbred, over-stuffed, ignorant, blood-sucking, dog kissing, brainless, dickless, hopeless, heartless, fatass, bug-eyed, stiff-legged, spineless, worm-headed sack of monkey shit!”
你这个贱货,骗子,坏蛋,腐烂的,地板造水淹,悲惨人生,造蛇咬,吃屎,近亲繁殖,全是废话,可以忽略的,吸血的,狗啃的,没大脑,木有小鸡鸡,木有希望,没有良心,大屁股,虫子眼,瘸腿,无脊椎,蠕虫脑袋的猴子粪!
出处: NATIONAL LAMPOON’S CHRISTMAS VACATION (1989)
The insulter: Clark Griswold (Chevy Chase)
The situation: Not having a happy holidays, Clark reveals his Christmas wish would be to tell his boss the following tirade.
You're never too old to learn something stupid.
You really impressed me a lot!
You people are so boring, u should go back fuck your mother's pussy and such ur father's dick. you're a testicle shitting penguin rapist
Wow...You sound fkin constapated
猛的来了:
STFU( "shut the fuck up"的缩写) you dirty cocksucking anal feltching cum guzzling piece of shit (youtube上评论、攻击加拿大人)
WTF??!!I I'm just answering a fucking question you dumbass fucktard douche ass canadian. Why don't you go eat some fucking maple cookies made from your fucktard mom you dumbfuck 另一个:
GTFO("get the fuck out"的缩写) faggot! You don't deserve a youtube account fucking dick face nigger jew ——这人明显是种族主义者
还看到有人骂David Letterman:
He's the kind of narrow-minded prick that should be taken off the air...
Why is he acting like a major motherfucker to one of my favorite artists
1.your mother fucking bull shit !
2. You make me sick! 你真让我恶心!
3. What’s wrong with you? 你怎么回事?
4. You shouldn’t have done that! 你真不应该那样做!
5. You’re a jerk! 你是个废物/混球!
6. Don’t talk to me like that! 别那样和我说话!
7. Who do you think you are? 你以为你是谁?
8. What’s your problem? 你怎么回事啊?
9. I hate you! 我讨厌你!
10. I don’t want to see your face! 我不愿再见到你!
11. You’re crazy! 你疯了!
12. Are you insane/crazy/out of your mind? 你疯了吗?(美国人绝对常用!)
13. Don’t bother me. 别烦我。
14. Knock it off. 少来这一套。
15. Get out of my face. 从我面前消失!
16. Leave me alone. 走开。
17. Get lost.滚开!
18. Take a hike! 哪儿凉快哪儿歇着去吧。
19. You piss me off. 你气死我了。
20. It’s none of your business. 关你屁事!
21. What’s the meaning of this? 这是什么意思?
22. How dare you! 你敢!
23. Cut it out. 省省吧。
24. You stupid jerk! 你这蠢猪!
25. You have a lot of nerve. 脸皮真厚。
26. I’m fed up. 我厌倦了。
27. I can’t take it anymore. 我受不了了!(李阳老师常用)
28. I’ve had enough of your garbage. 我听腻了你的废话。
29. Shut up! 闭嘴!
30. What do you want? 你想怎么样?
31. Do you know what time it is? 你知道现在都几点吗?
32. What were you thinking? 你脑子进水啊?
33. How can you say that? 你怎么可以这样说?
34. Who says? 谁说的?
35. That’s what you think! 那才是你脑子里想的!
36. Don’t look at me like that. 别那样看着我。
37. What did you say? 你说什么?
38. You are out of your mind. 你脑子有毛病!
39. You make me so mad.你气死我了啦。
40. Drop dead. 去死吧!
41. **** off. 滚蛋。
42. Don’t give me your ****. 别跟我胡扯。
43. Don’t give me your excuses/ No more excuses. 别找借口。
44. You’re a pain in the ass. 你这讨厌鬼。
45. You’re an asshole. 你这缺德鬼。
46. You bastard! 你这杂种!
47. Get over yourself. 别自以为是。
48. You’re nothing to me. 你对我什么都不是。
49. It’s not my fault. 不是我的错。
50. You look guilty. 你看上去心虚。
51. I can’t help it. 我没办法。
52. That’s your problem. 那是你的问题。
53. I don’t want to hear it. 我不想听!
54. Get off my back. 少跟我罗嗦。
55. Give me a break. 饶了我吧。
56. Who do you think you’re talking to? 你以为你在跟谁说话?
57. Look at this mess! 看看这烂摊子!
58. You’re so careless. 你真粗心。
59. Why on earth didn’t you tell me the truth? 你到底为什么不跟我说实话?
60. I’m about to explode! 我肺都快要气炸了!
61. What a stupid idiot! 真是白痴一个!
62. I’m not going to put up with this! 我再也受不了啦!
63. I never want to see your face again! 我再也不要见到你!
64. That’s terrible. 真糟糕!
65. Just look at what you’ve done! 看看你都做了些什么!
66. I wish I had never met you. 我真后悔这辈子遇到你!
67. You’re a disgrace. 你真丢人!
68. I’ll never forgive you! 我永远都不会饶恕你!
69. Don’t nag me! 别在我面前唠叨!
70. I’m sick of it. 我都腻了。
71. You’re such a bitch! 你这个婊子!
72. Stop screwing/ fooling/ messing around! 别鬼混了!
73. Mind your own business! 管好你自己的事!
74. You’re just a good for nothing bum! 你真是一个废物!/ 你一无是处!
75. You’ve gone too far! 你太过分了!
76. I loathe you! 我讨厌你!
77. I detest you! 我恨你!
78. Get the hell out of here! 滚开!
79. Don’t be that way! 别那样!
80. Can’t you do anything right? 成事不足,败事有余。
81. You’re impossible. 你真不可救药。
82. Don’t touch me! 别碰我!
83. Get away from me! 离我远一点儿!
84. Get out of my life. 我不愿再见到你。/ 从我的生活中消失吧。
85. You’re a joke! 你真是一个小丑!
86. Don’t give me your attitude. 别跟我摆架子。
87. You’ll be sorry. 你会后悔的。
88. We’re through. 我们完了!
89. Look at the mess you’ve made! 你搞得一团糟!
90. You’ve ruined everything. 全都让你搞砸了。
91. I can’t believe your never. 你好大的胆子!
92. You’re away too far. 你太过分了。
93. I can’t take you any more! 我再也受不了你啦!
94. I’m telling you for the last time! 我最后再告诉你一次!
95. I could kill you! 我宰了你!
96. That’s the stupidest thing I’ve ever heard! 那是我听到的最愚蠢的事!(比尔·盖茨常用)
97. I can’t believe a word you say. 我才不信你呢!
98. You never tell the truth! 你从来就不说实话!
99. Don’t push me ! 别逼我!
100. Enough is enough! 够了够了!
101. Don’t waste my time anymore. 别再浪费我的时间了!
102. Don’t make so much noise. I’m working. 别吵,我在干活。
103. It’s unfair. 太不公平了。
104. I’m very disappointed. 真让我失望。
105. Don’t panic! 别怕!
106. What do you think you are doing? 你知道你在做什么吗?
107. Don’t you dare come back again! 你敢再回来!
108. You asked for it. 你自找的。
109. Nonsense! 鬼话!!
1. Stop complaining!别发牢骚!
2. You make me sick!你真让我恶心!
3. What's wrong with you?你怎么回事?
4. You shouldn't have done that!你真不应该那样做!
5. You're a jerk!你是个废物/混球!
6. Don't talk to me like that!别那样和我说话!
7. Who do you think you are?你以为你是谁?
8. What's your problem?你怎么回事啊?
9. I hate you!我讨厌你!
10. I don't want to see your face!我不愿再见到你!
11. You're crazy!你疯了!
12. Are you insane/crazy/out of your mind?你疯了吗?(美国人绝对常用!)
13. Don't bother me.别烦我。
14. Knock it off.少来这一套。
15. Get out of my face.从我面前消失!
16. Leave me alone.走开。
17. Get lost.滚开!
18. Take a hike!哪儿凉快哪儿歇着去吧。
19. You piss me off.你气死我了。
20. It's none of your business.关你屁事!
21. What's the meaning of this?这是什么意思?
22. How dare you!你敢!
23. Cut it out.省省吧。
24. You stupid jerk!你这蠢猪!
25. You have a lot of nerve.脸皮真厚。
26. I'm fed up.我厌倦了。
27. I can't take it anymore.我受不了了!(李阳老师常用)
28. I've had enough of your garbage.我听腻了你的废话。
29. Shut up!闭嘴!
30. What do you want?你想怎么样?
31. Do you know what time it is?你知道现在都几点吗?
32. What were you thinking?你脑子进水啊?
33. How can you say that?你怎么可以这样说?
34. Who says?谁说的?
35. That's what you think!那才是你脑子里想的!
36. Don't look at me like that.别那样看着我。
37. What did you say?你说什么?
38. You are out of your mind.你脑子有毛病!
39. You make me so mad.你气死我了啦。
40. Drop dead.去死吧!
41. **** off.滚蛋。
42. Don't give me your shit.别跟我胡扯。
43. Don't give me your excuses/ No more excuses.别找借口。
44. You're a pain in the ass.你这讨厌鬼。
45. You're an asshole.你这缺德鬼。
46. You bastard!你这杂种!
47. Get over yourself.别自以为是。
48. You're nothing to me.你对我什么都不是。
49. It's not my fault.不是我的错。
50. You look guilty.你看上去心虚。
51. I can't help it.我没办法。
52. That's your problem.那是你的问题。
53. I don't want to hear it.我不想听!
54. Get off my back.少跟我罗嗦。
55. Give me a break.饶了我吧。
56. Who do you think you're talking to?你以为你在跟谁说话?
57. Look at this mess!看看这烂摊子!
58. You're so careless.你真粗心。
59. Why on earth didn't you tell me the truth?你到底为什么不跟我说实话?
60. I'm about to explode!我肺都快要气炸了!
61. What a stupid idiot!真是白痴一个!
62. I'm not going to put up with this!我再也受不了啦!
63. I never want to see your face again!我再也不要见到你!
64. That's terrible.真糟糕!
65. Just look at what you've done!看看你都做了些什么!
66. I wish I had never met you.我真后悔这辈子遇到你!
67. You're a disgrace.你真丢人!
68. I'll never forgive you!我永远都不会饶恕你!
69. Don't nag me!别在我面前唠叨!
70. I'm sick of it.我都腻了。
71. You're such a bitch!你这个婊子!
篇三:PHP中this,self,parent的区别
PHP中this,self,parent的区别
This的讲解
面向对象编程(OOP,Object OrientedProgramming)现已经成为编程人员的一项基本技能。利用OOP的思想进行PHP的高级编程,对于提高PHP编程能力和规划web开发构架都是很有意义的。
PHP5经过重写后,对OOP的支持额有了很大的飞跃,成为了具备了大部分面向对象语言的特性的语言,比PHP4有了很多的面向对象的特性。这里我主要谈的是this,self,parent 三个关键字之间的区别。从字面上来理解,分别是指这、自己、父亲。先初步解释一下,this是指向当前对象的指针(可以看成C里面的指针),self是指向当前类的指针,parent是指向父类的指针。我们这里频繁使用指针来描述,是因为没有更好的语言来表达。
首先我们要明确一点,self是指向类本身,也就是self是不指向任何已经实例化的对象,一般self使用来指向类中的静态变量。假如我们使用类里面静态(一般用关键字static)的成员,我们也必须使用self来调用。还要注意使用self来调用静态变量必须使用:: (域运算符号), parent的用法进行讲解
首先,我们明确,parent是指向父类的指针,一般我们使用parent来调用父类的构造函数。
篇四:科学家的This 与Those
These 与Those; 爱因斯坦,吉利斯皮,李约瑟和鲁桂珍? 近日一不小心加入了科学网网友们关于如何翻译爱因斯坦致Switzer信的讨论,拜读了各家观点,看了网上提供的原件,又翻阅了一些文献,觉得问题还真是不少。我这里说几点,有的甚至近乎胡思乱想,说错了请大家批评。
第一, 关于these 和those的用法
我发现很多人对这个代词的用法没有搞清,有些争论就是源于此。 Those的用法,就是代指上文提到过的事物。如果用these,就不是指上文,而是指下文要讲的内容了。试比较下列例句: Friends, food, books, those are the things I like. She will not come today. Who says that (those的单数)? Let me tell you this: you are stupid. 所以,“those discoveries”不是指“那些中国人的发现”,就是指“这些”上文提到的东西。
当然, these\those 是指这些还是那些,还是要看讲话者所处的情景。本来远近之分就是相对的。有兴趣者可以查查英文词典。
第二, 吉利斯皮写那段话时是不是指爱因斯坦的这封信? 吉利斯皮在《客观性的利剑》中说道:
Albert Einstein once remarked that there is no difficulty in
understanding why China or India did not create science. The problem
is rather why Europe did, for science is a most arduous and unlikely undertaking.
吉利斯皮并没有明指爱因斯坦的信,但李约瑟说他讲这话时就是指这封信。如果是这样,证明吉利斯皮对爱因斯坦信的理解也说明those discoveries 是指西方的东西,而不是指“中国的发现”。这样,李约瑟对吉氏的批评才有所指。(参见拙文“李约瑟对爱因斯坦信的理解”
http://blog.sciencenet.cn/home.php?mod=space&uid=1051670&do=blog&id=883407)
第三,李约瑟引爱因斯坦信时显然不是严格引用,而是加了修饰。 李约瑟或许是凭记忆引用,然后还润色了一下英文,所以才有些不同。主要是把“those steps”和“those discoveries” 改成“ these steps”和“ these discoveries”。究竟为什么这样改?这可能与作者当时的思想情境有关。如上所述,本来those和these 就是相对而言的。
第四, 是不是鲁桂珍在李约瑟文中有手脚?
李约瑟与鲁桂珍关系非同一般,很多论文可以说是他们一起写的。就《大滴定》这本书,李约瑟写下了这样的献词:
TO Lu GWEI-DJEN
the explainer, the antithesis,
the manifestation,
the assurance of a link
no separation can break.
如果是鲁桂珍读爱因斯坦此信,是不是也可能从中国人对“这些”和“那些”的思维习惯出发,觉得THOSE当指别的,所以把它改成THESE呢?我要申明一下:这纯是猜测,不必当真。
最后,我不知道爱因斯坦此信原文是德文还是英文,如果有研究爱因斯坦的专家出来提供一下历史史料,那就太好了。
附爱因斯坦信原文:
Development of Western science is based on two great
achievements: the invention of the formal logical system (in Euclidean geometry) by the Greek philosophers, and the discovery of the
possibility to find out causal relationships by systematic experiment (Renaissance).
In my opinion one has not to be astonished that the Chinese sages have not made those steps. The astonishing thing is that those discoveries were made at all.
(转引自 http://blog.sciencenet.cn/blog-669170-882310.html) 李约瑟引:
The development of Western science has been based on two great achievements: the invention of the formal logical system (in Euclidean geometry) by the Greek philosophers, and the discovery of the possibility of finding out causal relationships by systematic experiment (at the Renaissance). In my opinion one need not be astonished that the Chinese sages did not make these steps. The astonishing thing is that these discoveries were made at all.
篇五:JavaScript的self和this使用小结
JavaScript的self和this使用小结 - ued - 博客
园
本文摘
自:/reommmm/archive/2010/01/20/1652469.html
一、self
这个非常简单。我们知道,打开任何一个网页,浏览器会首先创建一个窗口,这个窗口就是一个window对象,也是js运行所依附的全局环境对象和全局作用域对象。self 指窗口本身,它返回的对象跟window对象是一模一样的。也正因为如此,window对象的常用方法和函数都可以用self代替window。举个例子,常见的写法如“self.close();”,把它放在标记中:“ href="javascript:self.close();">关闭窗口
二、this关键字
在讲this之前,看下面的一段代码:
代码
function thisTest()
{
this.textValue = 'this的dom测试';
this.element= document.createElement('span');
this.element.innerHTML = this.textValue;
this.element.style.color = "blue";
this.element.style.cursor = "pointer";
this.element.attachEvent('onclick', this.ToString);
}
thisTest.prototype.RenderDom = function()
{
document.body.appendChild(this.element);
}
thisTest.prototype.ToString = function()
{
alert("单击我:"+this.textValue);
};
var test= new thisTest();
test.RenderDom();
//test.ToString();
本来的目的是想在body中添加一个span元素,对于这个span元素,制定了它的字体颜色,悬浮在它上面的鼠标样式和单击触发事件。问题就出现在它的单击事件上(弹出"单击我:undefined")。也许有人会说你丫傻呀,写这么多sb代码还不就是为了实现下面这个东东吗?
onclick="alert(this.innerHTML)">this的dom测试
你看多简单直观,而且还不容易出错?!kao,我晕。我正要讲的是您正在使用的this.innerHTML中的this呀。
1、this到底指什么?
我们熟悉的c#有this关键字,它的主要作用就是指代当前对象实例(参数传递和索引器都要用到this)。在javascript中,this通常指向的是我们正在执行的函数本身,或者是指向该函数所属的对象(运行时)。
2、常见使用方式
(1)、直接在dom元素中使用
onclick="alert(this.value))" />
分析:对于dom元素的一个onclick(或其他如onblur等)属性,它为所属的html元素所拥有,直接在它触发的函数里写this,this应该指向该html元素。
(2)、给dom元素注册js函数
a、不正确的方式
function thisTest(){
alert(this.value); // 弹出undefined, this在这里指向??
}
分析:onclick事件直接调用thisTest函数,程序就会弹出undefined。因为thisTest函数是在window对象中定义的,
所以thisTest的拥有者(作用域)是window,thisTest的this也是window。而window是没有value属性的,所以就报错了。
b、正确的方式
function thisTest(){
alert(this.value);
}
document.getElementById("btnTest").onclick=thisTest; //给button的onclick事件注册一个函数
分析:在前面的示例中,thisTest函数定义在全局作用域(这里就是window对象),所以this指代的是当前的window对象。而通过
document.getElementById("btnTest").onclick=thisTest;这样的形式,其实是将btnTest的onclick属性设置为thisTest函数的一个副本,在btnTest的onclick属性的函数作用域内,this归btnTest所有,this也就指向了btnTest。其实如果有多个dom元素要注册该事件,我们可以利用不同的dom元素id,用下面的方式实现:
document.getElementById("domID").onclick=thisTest; //给button的onclick事件注册一个函数。
因为多个不同的HTML元素虽然创建了不同的函数副本,但每个副本的拥有者都是相对应的HTML元素,各自的this也都指向它们的拥有者,不会造成混乱。
为了验证上述说法,我们改进一下代码,让button直接弹出它们对应的触发函数:
代码
function thisTest(){
this.value="提交中";
}
var btn=document.getElementById("btnTest1");
alert(btn.onclick); //第一个按钮函数
var btnOther=document.getElementById("btnTest2");
btnOther.onclick=thisTest;
alert(btnOther.onclick); //第二个按钮函数
其弹出的结果是:
//第一个按钮
function onclick(){
thisTest()
体裁作文