Tôi đang cố gắng tạo một lớp chung trong Java sẽ thực hiện các phép toán trên các số. Trong ví dụ sau đây, bổ sung, như sau:Tôi có thể thực hiện các phép tính số học trên Bảng số không?
public class Example <T extends Number> {
public T add(T a, T b){
return a + b;
}
}
Tha thứ sự ngây thơ của tôi vì tôi tương đối mới với Java Generics. Mã này không biên dịch được với lỗi:
The operator + is undefined for the argument type(s) T, T
Tôi nghĩ rằng với việc bổ sung "Số mở rộng" mã sẽ biên dịch. Có thể làm Java này hay tôi sẽ phải tạo các phương thức ghi đè cho từng loại số?
Có thể muốn xem Scala hoặc Groovy nếu bạn muốn làm điều này. Họ có quá tải toán tử và chức năng ngôn ngữ cụ thể của miền :) –