java this的用法
/**
* 測試this的用法
*/
public class TestThis {
? ?int a,b,c;
? ?TestThis(){
? ? ? ?System.out.println("當前對象為:"+this);
? ? ? ?//this指向調(diào)用構造方法進行初始化的對象
? ?}
? ?TestThis(int a,int b){
? ? ? ?this();
? ? ? ?//這里的this()指代 TestThis()構造方法
? ? ? ?//使用this調(diào)用構造方法必須要放在第一行
? ? ? ?this.a = a;
? ? ? ?this.b = b;
? ?}
? ?TestThis(int a,int d,int c){
? ? ? ?this(a,d);
? ? ? ?//this的ad是(a,d,c)里的ad 不是(int a,int b)的形參ab
? ? ? ?//使用this調(diào)用構造方法必須放第一行
? ? ? ?this.c = c;
? ?}
? ?void print(int c){
? ? ? ?System.out.println(this.c);
? ? ? ?this.c = c;
? ? ? ?//this指向當前調(diào)用print方法的對象
? ? ? ?//因為print方法定義了int c 所以不帶this.的c都判定為print的形參c
? ?}
? ?void print1(int b,int c){
? ? ? ?this.b = b;
? ? ? ?System.out.println(this.b);
? ? ? ?this.print(c);
? ? ? ?//this指向當前對象 可以省略this. 不同于this()調(diào)用構造方法
? ?}
? ?public static void main(String[] args) {
? ? ? ?TestThis t1 = new TestThis(3,4,5);
? ? ? ?t1.print1(6,7);
? ?}
? ?//this不能用在static方法內(nèi)
}