Tôi có một dự án được trộn lẫn với Java/Scala, đó là mã Java GUI sử dụng thư viện Scala. Có cách nào để viết mã Scala sao cho nó sẽ phát ra Java enums trên thời gian biên dịch? Các phương pháp tiếp cận tôi đã cố gắng cho đến nay (các trường hợp niêm phong, mở rộng Enumeration) dường như tạo ra các lớp bình thường mà làm việc với chúng từ Java nhiều hairier hơn thẳng lên enums.Scala - Java interop: có thể Scala phát ra enums trong bytecode cho Java để tiêu thụ không?
Trả lời
Tại sao bạn không thể viết enum
lớp trong Java của mình? Dự án nguồn hỗn hợp (tức là Java + Scala) hoàn toàn khả thi ...
Scala chỉ hỗ trợ các tính năng Java 1.4 tại thời điểm này.
Java Enums được giới thiệu trong Java 1.5.
Er, ngoài generics –
Generics được thực hiện với loại tẩy xóa, sau khi biên dịch không còn generics nữa. Nhưng Scala hỗ trợ chú thích và những chú thích được giữ lại khi biên dịch sang bytecode và đó chắc chắn là một tính năng Java 1.5. –
Generics trong java được thực hiện thông qua tẩy xoá kiểu cũng như –
- 1. Scala - Java =? (Hoặc Clojure - Java =?)
- 2. Có thể mở rộng Java Enums không?
- 3. Tôi có thể phát triển Lego Mindstorms ở Scala không?
- 4. java có thể chạy mã scala đã biên dịch không?
- 5. Không thể sử dụng lớp Scala trong Java
- 6. Làm thế nào để chạy mã bytecode scala trên jvm?
- 7. Nhập gói java Scala java thêm
- 8. @throws trong Scala không cho phép gọi Java để bắt ngoại lệ đúng loại
- 9. Tôi có thể sử dụng lớp scala thực hiện giao diện java từ Java không?
- 10. Gọi mã Scala từ Java?
- 11. Scala, không thể thực hiện phương pháp java chung
- 12. Scala không thể nhận ra phương thức nào để gọi
- 13. Tính năng nào của Scala không thể dịch sang Java?
- 14. Sử dụng hằng số Scala trong Java
- 15. Java RMI với Scala, điều này có khả thi không?
- 16. Scala, java của tương lai (?)
- 17. Làm thế nào để phát ra và thực thi mã Java bytecode khi chạy?
- 18. Suy luận kiểu Scala Tuple trong Java
- 19. Tôi có thể sử dụng bitwise OR cho Java Enums
- 20. Đánh dấu chất lỏng trong Java/Scala
- 21. Scala getters và setters trong lớp Java
- 22. Có thể tiêu thụ và không tiêu hao trong iOS
- 23. Tôi có thể tạo phương thức có quyền truy cập Java được bảo vệ trong Scala không?
- 24. Bạn có thể khai báo các phương thức không tham số trong Java để sử dụng trong Scala không?
- 25. Ceylon có lợi thế gì so với Java hoặc Scala
- 26. Tiêu chí Scala tương đương
- 27. Scala AST trong Scala
- 28. Tại sao Tùy chọn Scala [T] không trực tiếp dịch sang T trong bytecode?
- 29. Nested Scala độc thân từ mã Java
- 30. Java .NET interop
Thật vậy, đó cũng là kết luận của tôi, tôi sẽ chấp nhận câu trả lời này. Maven hỗ trợ cho các dự án hỗn hợp vẫn còn rất flaky mặc dù. –
Tôi tiếp tục viết enums của tôi trong Java vì lý do chính xác này. –