Generik fungsi Java membenarkan menetapkan sempadan atas dan bawah. Had atas (lanjutan) menentukan bahawa jenis data yang diterima atau dikembalikan oleh fungsi mestilah subjenis jenis yang ditentukan, seperti
Sempadan atas dan bawah untuk generik fungsi Java
Generik fungsi ialah mekanisme berkuasa yang membolehkan kita menentukan pada masa penyusunan jenis data yang boleh dikendalikan oleh sesuatu fungsi. Generik dalam Java boleh mengisytiharkan sempadan atas dan bawah untuk mengehadkan jenis data yang diterima atau dikembalikan oleh fungsi.
Upper Bound
Had atas menentukan bahawa jenis data yang boleh diterima atau dikembalikan oleh fungsi mestilah subjenis jenis yang ditentukan. Ia ditentukan menggunakan kata kunci extends. Contohnya:
public <T extends Number> void printNumber(T number) { System.out.println(number); }
Fungsi ini hanya boleh menerima jenis Nombor atau subkelasnya (cth., Integer, Double, Float).
Lower Bound (Lower Bound)
lower bound menentukan bahawa jenis data yang boleh diterima atau dikembalikan oleh fungsi mestilah supertype dari jenis tertentu. Ia ditentukan menggunakan kata kunci super. Contohnya:
public <T super Number> void sumNumbers(List<T> numbers) { double sum = 0; for (T number : numbers) { sum += number.doubleValue(); } }
Fungsi ini boleh menerima Nombor atau senarai superjenisnya, seperti Senarai
Sempadan atas menentukan bahawa jenis data yang boleh dikendalikan oleh fungsi mestilah subjenis daripada jenis yang ditentukan.
Had bawah menentukan bahawa jenis data yang boleh dikendalikan oleh fungsi mestilah superjenis jenis yang ditentukan. Anda boleh menggunakan kedua-dua sempadan atas dan bawah untuk mengehadkan lagi jenis data yang diterima atau dikembalikan oleh fungsi. Penggunaan generik boleh meningkatkan kebolehgunaan semula kod dan keselamatan.Atas ialah kandungan terperinci Apakah sempadan atas dan bawah generik fungsi Java? bagaimana nak guna?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!