永发信息网

新手请教“java中this的用法

答案:3  悬赏:50  手机版
解决时间 2021-02-22 23:55
public class TrainingOfThis {
String color;
public TrainingOfThis(String str)
{
this.color=str;
}
...
}
这样用即正确,但是
public class TrainingOfThis {
String color;
public TrainingOfThis(String str)
{
TrainingOfThis.color=str;
}
...
}
就会报错“不能非静态字段进行静态引用”?
字段静态非静态都是什么概念?
最佳答案
TrainingOfThis.color 这个指的是 TrainingOfThis 这个类里的静态成员color。

你还是翻翻书吧,这太基础了~
我在这儿乱说不利于你基础知识掌握~
全部回答
首先,this指向方法的隐式参数,即调用此变量或方法的对象(就是你说的当前对象)。
看下面这个例子:
class test{ 
private string a; 
void a(string a){ 
this.a =a; 
} 
public static void main(string[] args){ 
test t1 = new test(); 
test t2 = new test(); 
t1.a("a");//调用a这个方法的时候,this指向t1这个对象 
t2.a("a");//调用a这个方法的时候,this指向t2这个对象 
} 
}
第二,如果this(...)出现在构造器或其它方法的第一句,那么说明这个构造器将调用同一类中的其他构造器或方法。
比如:
public a(int x,int y)
{
...
}
public a(int x,int y,string z)
{
this(x,y);//调用a(int x,int y)
z=...
}
找本Java疯狂讲义,仔细看。 想写文章(程序),写字(语法)都是问题,那么一定要仔细的学习才行。 其实静态和非静态的翻译不是很准确,正确的叫法应该是“属于类的”(静态的)还是“属于对象的”(非静态的),字段不如叫Feild更好,包含变量、方法而已。 属于类的变量,在类被声明时就被创建了,而属于对象的Feild在对象被创建时才会被创建。 因此如果允许在属于类的方法中使用属于对象的变量,那么这个属于对象的变量可能还没被创建,因此不允许这么做。 你找本Java语法的书仔细看2个月,将来会省至少2年的时间。 忠言逆耳利于行,急功近利不可取。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
亿客隆服饰广场芦溪店怎么去啊,有知道地址的
姓符的男孩名字100分符阳洋
鲁迅先生说过的名言警句有哪些?
化验单中AST:ALT是什么意思
制取橘皮精油的过程中,需先后进行A、B两次过
只要热水器插着电,里面的水会一直在烧吧?
阳光乐园托管中心在什么地方啊,我要过去处理
下列关于企业所得税扣除项目的表述中,错误的
凯里市公路段在哪里啊,我有事要去这个地方
三个苏北人把秦朝给灭了可以这么说吧我觉得可
诗句中包含王海涛三个字
申请教师资格证时上传的照片可以是经过p过的
动态创建的CEDIT控件的消息怎么得到
能活5斤面需多大和面机
“These animals must be sent to the zoo at
推荐资讯
红达·长运酒店这个地址在什么地方,我要处理
简答题简述windows7菜单项的显示约定,急啊。
《生命的价值》中的“总”字与文中哪个词照应
广州东至济南Z168卧铺多少钱 济南至广州T179
忍不住的四字成语是什么
I would believe whatever you said 什麽意思
办理有担保流动资金贷款时,若担保机构发生()
什么是非侵入式阀门
我的世界1.72纯净的 能生成沙漠神殿 和丛林庙
子曰: 老者安之,朋友信少,少者怀之 。如何翻
吸棉絮的是什么面料?还有什么是吸棉的?
松江JB-3102型柜式火灾报警控制器操作说明书,
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?