在書上看到一個小例子裡面有個語句是這樣,getclass().getname();
我知道的是getclass()是object的方法,用的時候不應該是this.getclass().getname();嗎
方法前面不是應該有個實例化的對象嗎,為什麼直接getclass().getname();就可以運行
getclass().getname();和this.getclass().getname();有什麼區別嗎
源代碼如下
package day_11;
public class Test_getClass {
@Override
public String toString() {
return getClass().getName();
}
public static void main(String[] args) {
System.out.println(new Test_getClass());
}
}
就是感覺好奇怪,沒有對象調用方法,像getClass().getName();
這樣方法也能單獨運行?
this在這個地方代指當前對象,如果不加this的話也是從當前對象找,所以這兩個方法執行的結果來看是一樣的,但是執行的過程來講是不一樣的,所以盡量要加上,效率會更高些