色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java this和that

吉茹定1年前8瀏覽0評論

Java是一種面向對象的編程語言,它的代碼中經常會出現this和that這兩個關鍵詞。本篇文章將會解釋這兩個關鍵詞的含義及其在Java中的使用。

首先,讓我們來看一下this關鍵詞。在Java中,this關鍵詞代表當前對象的一個引用。在一個類中,如果使用this關鍵詞,它指向的是當前正在執行的對象。例如,我們可以使用this關鍵詞在類中訪問當前對象的成員變量、成員方法或構造方法。以下是一個使用this關鍵詞的例子:

class Person {
String name;
public Person(String name) {
this.name = name;
}
public void sayHello() {
System.out.println("Hello, my name is " + this.name);
}
}
Person p = new Person("Tom");
p.sayHello(); // Hello, my name is Tom

在上面的例子中,我們使用了this關鍵詞來訪問類成員變量name。在構造方法中,使用this來引用當前對象的成員變量,可以避免與傳遞給構造方法的參數混淆。在sayHello方法中,我們使用this關鍵詞來引用當前對象的成員方法,這樣可以更加清晰地表示方法調用的對象。

接下來,我們來看一下that關鍵詞。在Java中,并沒有內置的that關鍵詞,通常是作為this關鍵詞的對比概念而存在。that關鍵詞可以用來引用另一個對象的引用。當我們需要比較兩個對象是否相等時,可以使用that關鍵詞來引用另一個對象的屬性或方法。以下是一個使用that關鍵詞的例子:

class Person {
String name;
public Person(String name) {
this.name = name;
}
public boolean equals(Person p) {
return this.name.equals(p.thatName());
}
public String thatName() {
return "Tom";
}
}
Person p1 = new Person("Tom");
Person p2 = new Person("Jerry");
if (p1.equals(p2)) {
System.out.println("p1 and p2 are the same person");
}
else {
System.out.println("p1 and p2 are different people");
}

在上面的例子中,我們定義了一個equals方法,使用that關鍵詞來引用傳遞進來的另一個Person對象的thatName方法,該方法返回了一個固定的字符串"Tom"。在比較兩個Person對象是否相等時,我們使用this關鍵詞引用當前對象的name屬性,使用that關鍵詞引用另一個對象的thatName方法得到的name屬性。如果這兩個name屬性相等,那么equals方法就返回true,否則返回false。