Khi bạn mở rộng một lớp với ngoại lệ của lớp (để tạo ngoại lệ mới), bạn sẽ nhận được cảnh báo để có một serialVersionUID
. Tôi biết rằng serialVersionUID
đóng một vai trò quan trọng trong khi tuần tự hóa và deserialization, nhưng khi ngoại lệ của tôi cần phải được serialized? Bất cứ ai có thể cho tôi một trường hợp thực tế trong đó tôi muốn lớp học ngoại lệ tùy chỉnh của tôi để có serialization và deserialization?Tại sao lớp ngoại lệ của tôi cần phải được sắp xếp theo thứ tự?
Trả lời
Điều này là do lớp gốc cho tất cả ngoại lệ, Throwable
triển khai giao diện Serializable
. Tất cả các ngoại lệ theo mặc định là serializable và đó là một quyết định thiết kế ngôn ngữ bởi vì các tác giả muốn ngoại lệ để có khả năng được gửi qua dây mà không có bất kỳ cấu hình đặc biệt nào.
Nếu lớp cơ sở không thể tuần tự hóa, bạn sẽ gặp khó khăn trong việc truyền tải chính xác những gì đã xảy ra trong trường hợp phương pháp từ xa không thành công do bạn không kiểm soát được các loại ngoại lệ.
Nếu ngoại lệ tùy chỉnh của bạn đã từng được sử dụng trong ứng dụng phân tán để vượt qua dây và đi đến khách hàng.
Tùy chọn duy nhất của bạn là xác định serialVersionUID
cho mỗi loại Exception
loại bạn xác định (IDE có thể tạo cho bạn) hoặc chặn cảnh báo.
Bạn có thể tìm câu hỏi trước đây của mình explicit serialVersionUID considered harmful? có liên quan.
- 1. Sắp xếp theo thứ tự tùy chỉnh
- 2. Danh sách được sắp xếp theo thứ tự django
- 3. Ngoại lệ tràn ngăn xếp — tại sao?
- 4. "Sắp xếp theo desc" theo thứ tự ngược lại?
- 5. Bash và sắp xếp các file theo thứ tự
- 6. Thừa kế JAXB, không đối sánh với lớp con của lớp được sắp xếp thứ tự
- 7. sắp xếp kết quả mà không cần sử dụng theo thứ tự theo điều khoản
- 8. Thứ tự sắp xếp của Django admin
- 9. Sắp xếp JSON theo thứ tự bảng chữ cái
- 10. Thứ tự sắp xếp MySQL theo giá trị mảng
- 11. Sắp xếp mảng (NSArray) theo thứ tự giảm dần
- 12. Sắp xếp một NSArray theo thứ tự ngược lại
- 13. Sắp xếp thứ tự SQL CTE và Thứ tự sắp xếp tùy chỉnh
- 14. Tại sao HighCharts đảo ngược thứ tự chuỗi của tôi?
- 15. Lưới Kendo sắp xếp theo thứ tự desc
- 16. Sắp xếp số Div trong jQuery theo Thứ tự sắp xếp tùy chỉnh
- 17. C#: sắp xếp từ điển theo thứ tự giảm dần
- 18. Thứ tự sắp xếp theo thứ tự "có điều kiện" trong LINQ
- 19. Sắp xếp chuỗi Android.xml theo thứ tự bảng chữ cái
- 20. jqGrid - Thứ tự sắp xếp mặc định theo cột
- 21. Sắp xếp một số theo thứ tự giảm dần
- 22. Sắp xếp theo thứ tự abc trong đường ray
- 23. Sắp xếp một véc tơ theo thứ tự giảm dần
- 24. Sắp xếp danh sách Python theo thứ tự giảm dần
- 25. LXML - Sắp xếp Thứ tự Thẻ
- 26. Tại sao tôi không nhận được số dòng từ ngăn xếp ngăn xếp được tạo từ Ngoại lệ?
- 27. jqGrid sắp xếp thứ tự mặc định?
- 28. Xây dựng cây nhị phân sao cho kết quả được sắp xếp theo thứ tự nên cho kết quả được sắp xếp
- 29. Sắp xếp thứ tự một phần?
- 30. Làm thế nào để có các danh sách được sắp xếp theo thứ tự chính xác