Để hỗ trợ lập trình chung, cũng như thực hiện kiểm tra kiểu chặt chẽ hơn, Java triển khai tính năng gõ chữ.
-
Tất cả các tham số kiểu trong các kiểu chung được thay thế bằng kiểu liên kết (nếu không bị ràng buộc) hoặc kiểu đối tượng. Bằng cách này, mã bytecode sẽ chỉ chứa các lớp, phương thức và giao diện.
-
Nhập phôi để bảo toàn loại.
-
Các phương thức cầu nối được tạo ra để duy trì khái niệm đa hình trong các kiểu chung mở rộng.
Ví dụ
import java.io.PrintStream; import java.util.*; public class Demo{ public Demo(){ } public static void main(String args[]){ List my_list = new ArrayList(); my_list.add("Hi there"); String my_str; for (Iterator iter = my_list.iterator(); iter.hasNext(); System.out.println(my_str)) my_str = (String)iter.next(); } }
Đầu ra
Hi there
Một lớp có tên Demo chứa một phương thức khởi tạo mà về cơ bản không có phần thân nào được định nghĩa bên trong nó. Trong chức năng chính, một danh sách mảng mới được tạo và các phần tử được thêm vào đó bằng cách sử dụng hàm ‘add’. Aniterator được xác định và một chuỗi được xác định. Một trình lặp lặp qua các phần tử trong chuỗi bằng cách sử dụng hàm ‘hasNext’ để kiểm tra xem có phần tử nào không và sau đó chuyển sang phần tử đó. Đầu ra được in trên màn hình.