Rumah >Java >javaTutorial >Kaedah Pemuatan Sumber Mana yang Terbaik di Jawa?

Kaedah Pemuatan Sumber Mana yang Terbaik di Jawa?

DDD
DDDasal
2024-11-16 02:03:03400semak imbas

Which Resource Loading Method is Best in Java?

Kaedah Pilihan untuk Pemuatan Sumber dalam Java

Pengaturcara yang bekerja dengan Java mungkin menghadapi pelbagai pilihan untuk memuatkan sumber, yang membawa kepada soalan mengenai pendekatan yang paling cekap. Tiga kaedah yang biasa digunakan ialah:

  • this.getClass().getResource() (atau getResourceAsStream())
  • Thread.currentThread().getContextClassLoader().getResource(nama)
  • System.class.getResource(name)

Untuk menentukan pendekatan optimum, adalah penting untuk mempertimbangkan pemuat kelas dan lokasi permulaan yang terlibat dalam setiap kaedah.

this.getClass().getResource()

Kaedah ini memuatkan sumber menggunakan pemuat kelas bagi kelas yang dipanggil. Ia mencari sumber dalam pakej yang sama dengan kelas panggilan. Dengan menambahkan "/", anda boleh merujuk kepada sumber sepenuhnya.

Thread.currentThread().getContextClassLoader().getResource(name)

Kaedah ini dimuatkan sumber menggunakan pemuat kelas konteks. Walau bagaimanapun, ia tidak menyelesaikan nama sumber mengikut mana-mana pakej tertentu dan sumber mesti dirujuk sepenuhnya.

System.class.getResource(name)

Kaedah ini memuatkan sumber menggunakan pemuat kelas sistem. Ia juga memerlukan rujukan mutlak kepada sumber dan tidak boleh digunakan untuk memuatkan sumber daripada pakej java.lang (di mana Sistem terletak).

Akhirnya, kaedah terbaik bergantung pada keperluan khusus. Untuk memuatkan sumber berbanding dengan kelas panggilan, this.getClass().getResource() diutamakan. Untuk rujukan sumber mutlak, Thread.currentThread().getContextClassLoader().getResource(nama) boleh digunakan. Untuk sumber yang dimuatkan daripada pemuat kelas sistem, System.class.getResource(name) adalah sesuai.

Atas ialah kandungan terperinci Kaedah Pemuatan Sumber Mana yang Terbaik di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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