问题描述
this关键字的用法?1调用其他构造函数2作为对象调其他方法请举例说明不是太清楚?
解决方案
解决方案二:
http://blog.csdn.net/lw223/archive/2008/01/09/2031221.aspx进这里看看很详细的讲解
解决方案三:
1.publicclassTest{publicTest(){this("");}publicTest(Stringname){System.out.println("name="+name);}}2.publicclassTest{publicfun1(){this.fun2();}publicfun2(){System.out.println("fun2");}}不知明白否???
解决方案四:
用来区别当一个方法里有和类属性或方法同名的属性或方法时:publicClassA{privateinta;privateAA(inta){this.a=a;//把你方法里的参数a赋值给类里的属性a,这里如果没有this关键字默认小范围的也就是参数a;}}
解决方案五:
this可以看作是一个变量,。它的值是当前对象的引用
解决方案六:
this是当前对象自己
解决方案七:
在内部类中使用.当有多层嵌套的内部类时,内部类内的方法想要获得外部类实例的引用可以使用Outer.this
解决方案八:
this直接跟小括号是调用同类构造器,this后面去点什么方法就是调用同类中的方法,相信已经讲的相当直白了吧。提醒一句,this调用构造器只能出现在构造器中,且只能是构造器中的第一条语句,
解决方案九:
在类中使用this来表示自己的名字,主要是因为这个对象还没有创建,所以只能用this来使用了!
解决方案十:
就是自身的意思
解决方案十一:
1.调用其他构造函数:意思是在写一个类的构造函数时,想用已有的构造函数做初步的初始化,这个用法和子类调用父类的构造函数时用super()是类似的,比如:classTest{inta;Test(inta){this();//必须为该函数的第一句this.a=a;}Test(){System.out.println("我是无参构造函数");}publicstaticvoidmain(String[]args){newCat(2);}}2.作为对象调用其他方法:当一个对象创建之后,this就是对象本身。可以调用本身的变量或者方法,例如:classTest{inta;publicTest(inta){this.a=a;//this.a表示的是类的成员变量a,即第二行代码里面的a,用于区别调用此构造函数时传递的参数a,即括号里面的inta}publicvoidprintvalue(){intb=this.counter();//调用此类中的方法,但是这个this是可以省略的,默认情况下是不写的System.out.println(b);}publicintcounter(){a=a+10;}}另外,在内部类中,如果想调用外部类的实例,需要用Outer.this来获取,具体的可以找一下内部类的介绍来看看,希望能帮到你
解决方案十二:
不好意思,请将1的代码里面那个main函数里的newCat(2)改为newTest(2)
解决方案十三:
引用10楼bosi1221的回复:
1.调用其他构造函数:意思是在写一个类的构造函数时,想用已有的构造函数做初步的初始化,这个用法和子类调用父类的构造函数时用super()是类似的,比如:classTest{inta;Test(inta){this();//必须为该函数的第一句this.a=a;}……
UP!
解决方案十四:
十楼讲的非常明白,this调用构造方法,只能是放在第一条语句。
解决方案十五:
结合十楼和七楼,这就非常明白了
解决方案:
有以下几种常用的使用情况:1.当构造方法的形式参数名称与类的成员变量名相同,使用this用以区别构造方法的形式参数名称与类的成员变量。2.假设有一个容器类和一个部件类,在容器类的某个方法中要创建部件类的实例对象,而部件类的构造方法要接受一个代表其所在容器的参数。3.this可指代对象自己本身,代表当前对象的指针。4.在一个构造函数中调用另一个构造函数时,用this关键字。5.this不可在static方法内使用。
解决方案:
this在哪用,就只能调用这个类中的方法或者属性
解决方案:
一个对象的内部又包含了一个引用,而这个引用的句柄呢又指向了该对象本身,,