Tạm thời trong Java: Cái gì, Tại sao & Cách thức hoạt động?



Transient trong Java là một từ khóa được sử dụng trong tuần tự hóa. Nó được sử dụng khi bạn không muốn lưu giá trị của một biến trong một tệp

Transient trong Java được sử dụng để đánh dấu biến thành viên không được tuần tự hóa khi nó được duy trì thành các luồng byte. Từ khóa này đóng một vai trò quan trọng để đáp ứng các hạn chế bảo mật trong . Nó bỏ qua giá trị ban đầu của một Biến đổi và lưu giá trị mặc định của biến đó .

Sau đây là các chủ đề sẽ được thảo luận trong bài viết này:





Bắt đầu nào!

Từ khóa Transient trong Java là gì?

Chuyển tiếp về cơ bản là một công cụ sửa đổi biến được sử dụng để tuần tự hóa. Bây giờ, Serialization là gì? Serialization trong Java là một cơ chế được sử dụng để chuyển đổi trạng thái của một đối tượng thành một luồng byte. Tại thời điểm tuần tự hóa, nếu bạn không muốn lưu giá trị của một biến cụ thể trong tệp, hãy sử dụng từ khóa tạm thời.



Cú pháp :

thoáng qua riêng tư

hoặc là

riêng tư thoáng qua

Trong trường hợp bạn xác định bất kỳ thành viên dữ liệu nào là tạm thời, nó sẽ không được tuần tự hóa. Điều này là do mọi trường được đánh dấu là tạm thời sẽ không được đăng nhiều kỳ. Bạn có thể sử dụng từ khóa tạm thời này để chỉ ra máy ảo Java (JVM) rằng biến tạm thời không phải là một phần của trạng thái liên tục của một đối tượng.



Hãy viết một ví dụ rất cơ bản để hiểu về Tính năng tạm thời trong Java.

kiểu chuyển đổi trong thông tin
class Demo thực hiện Serializable {// Làm cho con người tạm thời riêng tư thoáng qua Chuỗi con người tạm thời int age // tuần tự hóa các trường khác riêng tư Tên chuỗi, địa chỉ Ngày dob // phần còn lại của mã}

Ở đây, tôi đã tạo một lớp có tên là Demo để triển khai Serializable. Thành viên dữ liệu tuổi của lớp Demo được khai báo là tạm thời, giá trị của nó sẽ không được tuần tự hóa. Nhưng nếu bạn deserialize đối tượng, bạn sẽ nhận được giá trị mặc định cho một biến tạm thời.

Tại sao công cụ sửa đổi tạm thời được sử dụng?

Tạm thời trong Java được sử dụng để chỉ ra rằng một trường không nên là một phần của quá trình tuần tự hóa.

Công cụ sửa đổi Chuyển tiếp có thể được áp dụng cho các biến thành viên của một lớp để tắt tuần tự hóa trên các biến thành viên này. Mọi trường được đánh dấu là tạm thời sẽ không được tuần tự hóa. Bạn có thể sử dụng từ khóa tạm thời này để chỉ ra Máy ảo Java rằng biến tạm thời không phải là một phần của trạng thái liên tục của một đối tượng.

Bạn có thể có câu hỏi này chạy trong đầu của bạn. Khi nào sử dụng Transient này trong Java?

Câu trả lời cho điều này sẽ là:

  1. Bạn có thể sử dụng từ khóa Tạm thời này khi bạn có các trường được dẫn xuất / tính toán từ các trường khác trong phiên bản của một lớp.
  2. Sử dụng nó với các trường không được đánh dấu là “Có thể nối tiếp” bên trong JDK hoặc mã ứng dụng. Điều này là do các lớp không triển khai giao diện Serializable được tham chiếu trong bất kỳ lớp nào có thể tuần tự hóa và không thể được tuần tự hóa và sẽ ném ra ngoại lệ “java.io.NotSerializableException”. Lưu ý rằng các tham chiếu không thể tuần tự hóa này phải được đánh dấu 'tạm thời' trước nối tiếp lớp chính.

Làm thế nào để sử dụng Transient với từ khóa Final?

Tạm thời trong Java có thể được sử dụng với từ khóa cuối cùng bởi vì nó hoạt động khác nhau trong các tình huống khác nhau mà thường không giống với các từ khóa trong Java .

Hãy xem ví dụ này.

chuyển đổi nhị phân sang int java
private String firstName private String lastName // trường cuối cùng 1 công khai cuối cùng thoáng qua String pass = 'password' // trường cuối cùng 2 công khai cuối cùng thoáng qua Lock lock = Lock.getLock ('demo')

Bây giờ khi bạn chạy lại tuần tự hóa (ghi / đọc), bạn sẽ nhận được kết quả sau:

Kenny
Mạnh
mật khẩu
vô giá trị

Điều này là do Chúng tôi đã đánh dấu “vượt qua” thành tạm thời, và trường đó vẫn được tuần tự hóa. Đối với một khai báo tương tự, khóa không được tuần tự hóa. Lý do là, bất cứ khi nào bất kỳ trường cuối cùng nào được đánh giá là một biểu thức hằng số,nó được tuần tự hóa bởi JVM bỏ qua sự hiện diện của từ khóa thoáng qua.

Sự khác biệt giữa thoáng qua và dễ bay hơi

Đây là một câu hỏi quan trọng được hỏi trong một . Sự khác biệt giữa từ khóa tạm thời và từ khóa biến động trong Java là gì?

Bay hơi và Tạm thời là hai từ khóa hoàn toàn khác nhau được sử dụng trong . Từ khóa Transient được sử dụng trong quá trình tuần tự hóa đối tượng Java. Biến động liên quan đến khả năng hiển thị của các biến được sửa đổi bởi nhiều luồng.

Điểm giống nhau duy nhất giữa các từ khóa này là chúng ít được sử dụng hơn hoặc từ khóa không phổ biến và không phổ biến như công khai, tĩnh hoặc cuối cùng.

Đến phần cuối của bài viết này, chúng ta đã tìm hiểu về Transient trong Java. Hy vọng bạn rõ ràng với tất cả những gì đã được chia sẻ với bạn trong hướng dẫn này.

Nếu bạn thấy bài viết này về 'Tạm thời trong Java' có liên quan, hãy xem một công ty học trực tuyến đáng tin cậy với mạng lưới hơn 250.000 người học hài lòng trải dài trên toàn cầu.

Chúng tôi ở đây để giúp bạn từng bước trên hành trình của bạn, để trở thành một người ngoài câu hỏi phỏng vấn java này, chúng tôi còn đưa ra một chương trình giảng dạy được thiết kế cho sinh viên và các chuyên gia muốn trở thành một Nhà phát triển Java. Khóa học được thiết kế để cung cấp cho bạn khởi đầu về lập trình Java và đào tạo bạn về cả khái niệm Java cốt lõi và nâng cao cùng với các khung Java khác nhau như Hibernate & Spring.

Nếu bạn gặp bất kỳ câu hỏi nào, vui lòng đặt tất cả câu hỏi của bạn trong phần nhận xét của 'Tạm thời trong Java' và nhóm của chúng tôi sẽ sẵn lòng trả lời.