Rumah > Java > javaTutorial > Bagaimana untuk mendapatkan nama kelas dalam java

Bagaimana untuk mendapatkan nama kelas dalam java

WBOY
Lepaskan: 2023-05-03 16:55:07
ke hadapan
2385 orang telah melayarinya

Jika kita ingin mendapatkan nama kelas yang sedang berjalan, bagaimana kita hendak mendapatkannya?

Dalam kelas Kelas, terdapat kaedah berikut:

Bagaimana untuk mendapatkan nama kelas dalam java

Sebagai contoh, kini terdapat kelas Demo7 .java

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

Hasil operasi:

Bagaimana untuk mendapatkan nama kelas dalam java

Di atas ialah objek memanggil terus getClass() untuk mendapatkan Objek kelas, dan kemudian panggil getName () Dapatkan nama kelas yang sedang berjalan.

Jadi jika kelas mewarisi kelas, bagaimana untuk mendapatkan nama kelas semasa dan nama kelas induk? >Demo9.java

package pxx.test1;
 
public class Demo8 {
    int num;
    String name;
    public Demo8(){};
}
Salin selepas log masuk
Di atas kami menggunakan super untuk memanggil kaedah getClass(), dan kemudian mendapatkan nama kelas Perlu diingatkan di sini bahawa super hanya boleh memanggil kaedah bukan statik induk class. , dan tidak boleh dipanggil dalam kaedah statik, kerana super, seperti ini, adalah berdasarkan operasi objek. Bercakap mengenainya, getClass() kelas induk dipanggil di sini, jadi saya ingin mendapatkan nama kelas kelas induk Baik, saya menjalankan

dan masih boleh. 't dapatkan nama kelas kelas induk , kemudian mari kita lihat kaedah geClass() Kaedah ini berada dalam objek Object

Bagaimana untuk mendapatkan nama kelas dalam java Ternyata. kaedah ini adalah muktamad, iaitu kaedah ini diwarisi oleh kelas lain Ya, tetapi ia tidak boleh ditindih Oleh itu, this.getClass dan super.getClass akhirnya memanggil kaedah getClass dalam kelas Objek, dan definisi ini. kaedah adalah untuk mengembalikan kelas runtime Object, jadi di atas akan mengembalikan nama kelasnya sendiri dan bukannya nama kelas induk.

Jadi bagaimana untuk mendapatkan nama kelas induk?

Bagaimana untuk mendapatkan nama kelas dalam java Mari pergi ke kelas Kelas dan lihat dan cari kaedah berikut:

Bermaksud di atas, Akan mengembalikan kelas induk kelas panggilan semasa Selepas mendapat kelas induk, kita masih boleh menggunakan getName() untuk mendapatkan nama di atas

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();
    }
}
Salin selepas log masuk
Hasil yang sedang dijalankan:

Bagaimana untuk mendapatkan nama kelas dalam java<.>

Dengan cara ini anda mendapat nama kelas kelas induk

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan nama kelas dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan