Computer >> Máy Tính >  >> Lập trình >> Java

Làm cách nào chúng ta có thể sử dụng toán tử kim cương với các lớp ẩn danh trong Java 9?

Toán tử kim cương đã giới thiệu trong Java 7 để làm cho mã dễ đọc hơn và nó không thể được sử dụng cho các lớp ẩn danh bên trong. Trong Java 9 , toán tử kim cương có thể được sử dụng với lớp bên trong ẩn danh để cải thiện khả năng đọc của mã.

Trong Java 9, chúng ta có thể sử dụng toán tử kim cương <> trong các lớp ẩn danh như sau:

Ví dụ

public class DiamondOperatorTest {
   public static void main(String args[]) {
      Handler<Integer> intHandler = new Handler<>(1) {
         @Override
         public void handle() {
            System.out.println(data);
         }
      };
      intHandler.handle();

      Handler<? extends Number> intHandler1 = new Handler<>(2) {
         @Override
         public void handle() {
            System.out.println(data);
         }
      };
      intHandler1.handle();

      Handler<?> handler = new Handler<>("test") {
         @Override
         public void handle() {
            System.out.println(data);
         }
      };
      handler.handle();
   }
}

abstract class Handler<T> {
   public T data;
   public Handler(T data) {
      this.data = data;
   }
   abstract void handle();
}

Đầu ra

1
2
test