Hai lớp có thể có cùng serialVersionUID không?
Hai lớp có thể có cùng serialVersionUID không?

Video: Hai lớp có thể có cùng serialVersionUID không?

Video: Hai lớp có thể có cùng serialVersionUID không?
Video: Fix Eclipse's SerialVersionUID Warning Error 2024, Tháng mười một
Anonim

Có, có thể là hai khác nhau lớp học có thể có NS cùng một serialVersionUID giá trị. Nhưng thích sử dụng một cái duy nhất cho mỗi lớp . Cũng sử dụng một giá trị dài hơn từ 8 đến 10 chữ số thay vì chỉ 1 như giá trị.

Do đó, serialVersionUID là gì?

Nói một cách đơn giản, serialVersionUID là một định danh duy nhất cho các lớp có thể nối tiếp. Điều này được sử dụng trong quá trình giải mã hóa một đối tượng, để đảm bảo rằng một lớp được tải tương thích với đối tượng được tuần tự hóa.

Tương tự như vậy, việc sử dụng serialVersionUID 1l là gì? Các serialVersionUID là một mã định danh phiên bản chung cho một lớp Có thể nối tiếp. Hủy đăng ký sử dụng số này để đảm bảo rằng một lớp được tải tương ứng chính xác với một đối tượng được tuần tự hóa. Nếu không tìm thấy kết quả phù hợp, thì một lỗi không hợp lệ sẽ được đưa ra.

Tương tự, nó được hỏi, có cần serialVersionUID không?

mặc định serialVersionUID tính toán rất nhạy cảm với các chi tiết lớp có thể khác nhau tùy thuộc vào việc triển khai trình biên dịch, và có thể do đó dẫn đến các lỗi không mong muốn không mong đợi trong quá trình giải mã hóa không mong muốn. Do đó, bạn phải khai báo serialVersionUID bởi vì nó cho phép chúng ta kiểm soát nhiều hơn.

Vai trò của serialVersionUID trong quá trình tuần tự hóa là gì?

Suốt trong tuần tự hóa , thời gian chạy java liên kết số phiên bản với mỗi có thể nối tiếp lớp. Số này được gọi là serialVersionUID , được sử dụng trong quá trình giải mã hóa để xác minh rằng người gửi và người nhận đăng nhiều kỳ đối tượng đã tải các lớp cho đối tượng đó tương thích với tuần tự hóa.

Đề xuất: