Tôi vừa mới bắt đầu học Scala và bây giờ tôi tự hỏi làm thế nào tôi có thể thực hiện hai giao diện Java khác nhau với một lớp Scala? Giả sử tôi có các giao diện sau được viết bằng JavaLớp Scala để triển khai hai Giao diện Java - làm cách nào?
public interface EventRecorder {
public void abstract record(Event event);
}
public interface TransactionCapable {
public void abstract commit();
}
Nhưng một lớp Scala chỉ có thể mở rộng một lớp tại một thời điểm. Làm thế nào tôi có thể có một lớp Scala có thể thực hiện cả hai hợp đồng? Tôi có phải lập bản đồ các giao diện đó thành các đặc điểm không?
Lưu ý, các lớp Scala của tôi sẽ được sử dụng từ Java vì tôi đang cố gắng chèn chức năng mới được viết bằng Scala vào một ứng dụng Java hiện có. Và khuôn khổ hiện tại hy vọng rằng cả hai giao diện hợp đồng được hoàn thành.
Cảm ơn! Tôi thực sự đã thử nó nhưng IntelliJ phun ra một số lỗi cú pháp mơ hồ. Tôi phải thử lại lần nữa và xem dự án có được thiết lập không chính xác hay không. – puudeli
Nếu nó được đề cập, các giao diện tiếp theo được tách biệt với từ khóa 'with'? Ví dụ. 'x kéo dài y với z với q'. –
Cảm ơn bạn đã hoàn tất! –