中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java怎么獲取類名

發布時間:2023-05-04 11:50:29 來源:億速云 閱讀:147 作者:zzz 欄目:編程語言

這篇“java怎么獲取類名”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“java怎么獲取類名”文章吧。

如果我們要獲取當前運行的類名,怎么來獲取?

在Class類中,有如下一個方法:

java怎么獲取類名

比如現在有一個類Demo7.java

package pxx.test1;
 
public class Demo7 {
    public static void main(String[] args) {
        Demo7 demo7 = new Demo7();
        System.out.println(demo7.getClass().getName());
    }
}

運行結果:

java怎么獲取類名

上面就是直接這個對象調用了getClass()得到了Class對象,然后調用getName()得到運行類名。

那么假如一個類繼承了一個類,又怎么獲取當前類名還有父類名呢

Demo8.java

package pxx.test1;
 
public class Demo8 {
    int num;
    String name;
    public Demo8(){};
}

Demo9.java

package pxx.test1;
 
public class Demo9 extends Demo8 {
    public void test() {
        System.out.println(super.getClass().getName());
    }
    public static void main(String[] args) {
        new Demo9().test();
    }
}

上面我們就用super調用了一個getClass()方法,然后又來獲取類名,這里需要注意的是super只能調用父類的非靜態方法,并且不能在static方法中調用,因為super與this一樣,是基于對象操作的。說回來,這里調用父類的getClass(),因此想來得到父類的類名,好了,運行一下

java怎么獲取類名

還是拿不到父類的類名 ,那我們去看一下這個geClass()方法,這個方法在Object對象里面

java怎么獲取類名

原來這個方法是一個final,也就是說,這個方法被其他類繼承可以,但是不能被重寫,因此,this.getClass與super.getClass最終調用的都是Object類中的getClass方法,而這個方法的定義是返回Object的運行時類,所以,上面會返回自己的類名而不是父類名。

那么怎么獲取父類的名字呢?

我們去到Class類里面去看一下,發現有下面這個方法:

java怎么獲取類名

上面這個意思也就是說,會返回這個當前調用類的父類,拿到父類之后我們依然可以用getName()來獲取名字,上代碼

package pxx.test1;
public class Demo9 extends Demo8 {
    public void test() {
        System.out.println(super.getClass().getSuperclass().getName());
    }
    public static void main(String[] args) {
        new Demo9().test();
 
    }
}

運行結果:

java怎么獲取類名

這樣就拿到了父類的類名

以上就是關于“java怎么獲取類名”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

登封市| 敦煌市| 咸丰县| 安岳县| 清徐县| 台湾省| 昭觉县| 葫芦岛市| 阜康市| 娄底市| 安吉县| 陇西县| 临沂市| 镇远县| 镇沅| 丹江口市| 托里县| 天津市| 明水县| 毕节市| 江达县| 富平县| 白水县| 汉中市| 堆龙德庆县| 莎车县| 礼泉县| 金川县| 原阳县| 怀远县| 健康| 陇西县| 沂南县| 台安县| 罗城| 桓台县| 南开区| 武汉市| 北川| 平湖市| 佛山市|