两个吃奶一个添下面视频_人妻第一页香蕉网_欧美xxxx少妇_妺妺窝人体色www婷婷

this是Java的一個關(guān)鍵字,表示某個對象。this可以出現(xiàn)在實例方法和構(gòu)造方法中,但不可以出現(xiàn)在類方法中。


在構(gòu)造方法中使用this

this關(guān)鍵字出現(xiàn)在類的構(gòu)造方法中時,代表使用該構(gòu)造方法所創(chuàng)建的對象。


例如:

public class People {
    int leg,hand;
    String name;
    People(String s) {
        name = s;
        this.init(); //可以省略this.,即寫成init();
    }
    void init() {
        leg = 2;
        hand = 2;
        System.out.println(name+"有"+hand+"只手"+1eg+"條腿");
    }
    public static void main(String args[]) {
        People boshi = new People("布什");
    }
}


在實例方法中使用this

實例方法只能通過對象來調(diào)用,不能通過類名來調(diào)用。當(dāng)this關(guān)鍵字出現(xiàn)在實例方法中時,就代表正在調(diào)用該方法的當(dāng)前對象。


實例方法可以操作類的成員變量,當(dāng)實例成員變量在實例方法中出現(xiàn)時,一般格式為:

this.成員變量;


當(dāng)static成員變量在實例方法中出現(xiàn)時,一般格式為:

類名.成員變量;


例如:

class A {
    int x;
    static int y;
    void a() {
        this.x = 10;
        A.y = 20;
    }
}


該A類中的實例方法a中出現(xiàn)了this,this代表使用a的當(dāng)前對象,所以“this.x”就表示當(dāng)前對象的變量x,當(dāng)對象調(diào)用方法a時,將10賦給該對象的變量x。當(dāng)一個對象調(diào)用方法時,方法中的實例成員變量就是指分配給該對象的實例成員變量,而static變量和其他對象共享。因此,通常情況下,可以省略實例成員變量名字前面的“this.”以及static變量前面的“類名.”。


例如:

class A {
    int x;
    static int y;
    void a() {
        x = 10; //省略this.
        y = 20; //省略類名.
    }
}


注意:

當(dāng)實例成員變量的名字和局部變量的名字相同時,成員變量前面的“this.”或“類名.”就不可以省略。


類的實例方法可以調(diào)用類的其他方法,對于實例方法調(diào)用的一般格式為:

this.方法;


對于類方法調(diào)用的一般格式為:

類名.方法;


例如:

class B {
    void b() {
        this.c();
        B.d();
    }
    void c() {
        System.out.println("hi");
    }
    static void d() {
        System.out.println("ok");
    }
}


該B類中的方法b中出現(xiàn)了this,this代表調(diào)用方法b的當(dāng)前對象,所以方法b的方法體中this.c()就是當(dāng)前對象調(diào)用方法c,也就是說,在某個對象調(diào)用方法b的過程中,又調(diào)用了方法c。由于這種邏輯關(guān)系非常明確,一個實例方法調(diào)用另-個方法時可以省略方法名字前面的“this.”或“類名.”。


例如:

class B {
    void b() {
        c(); //省略this.
        d(); //省略類名.
    }
    void c() {
        System.out.println("hi");
    }
    static void d() {
        System.out.println("ok");
    }
}


注意:

this不能出現(xiàn)在類方法中,這是因為類方法可以通過類名直接調(diào)用,這時可能還沒有任何對象誕生。


點(diǎn)贊(1)

C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點(diǎn)擊了解:

一點(diǎn)編程也不會寫的:零基礎(chǔ)C語言學(xué)練課程

解決困擾你多年的C語言疑難雜癥特性的C語言進(jìn)階課程

從零到寫出一個爬蟲的Python編程課程

只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程

信息學(xué)奧賽或C++選手的 必學(xué)C++課程

藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競賽課入門課程

手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程

Dotcpp在線編譯      (登錄可減少運(yùn)行等待時間)