Trang Chủ Phát triển Loại đột biến là gì? - định nghĩa từ techopedia

Loại đột biến là gì? - định nghĩa từ techopedia

Mục lục:

Anonim

Định nghĩa - Loại Mutable có nghĩa là gì?

Kiểu có thể thay đổi, trong C #, là một loại đối tượng có thành viên dữ liệu, chẳng hạn như thuộc tính, dữ liệu và trường, có thể được sửa đổi sau khi tạo.


Các loại có thể thay đổi được sử dụng trong các ứng dụng song song, trong đó các đối tượng của loại giá trị có thể thay đổi được duy trì trong ngăn xếp bởi Thời gian chạy ngôn ngữ chung (CLR). Điều này cung cấp một số tối ưu hóa, làm cho nó nhanh hơn các đối tượng được phân bổ heap. Để ngăn lỗi đồng bộ hóa xảy ra trong các ứng dụng song song do nhiều luồng truy cập dữ liệu được chia sẻ, các loại có thể thay đổi được sử dụng với một số loại cơ chế khóa.


Do tính chất vốn có của nó, dữ liệu loại có thể thay đổi có thể được sửa đổi trong thời gian chạy, do đó loại có thể thay đổi thường được sử dụng khi đối tượng chứa một lượng lớn dữ liệu có thể thay đổi. Mặc dù loại có thể thay đổi không an toàn và an toàn như loại không thay đổi, nhưng nó thường được sử dụng với các biến của loại giá trị, được phân bổ trong ngăn xếp, cải thiện hiệu suất.

Techopedia giải thích Loại Mutable

Tất cả các loại giá trị tích hợp như int, double, v.v., là các loại có thể thay đổi và có thể được tạo thành bất biến bằng cách thêm công cụ sửa đổi "chỉ đọc" trước các biến. Nếu loại tham chiếu có thể thay đổi được chỉ định bằng công cụ sửa đổi chỉ đọc, trình biên dịch C # sẽ tạo cảnh báo. Bằng cách thêm một công cụ sửa đổi chỉ đọc vào một trường loại tham chiếu, trường này không thể được thay thế bằng một thể hiện khác của loại tham chiếu, nhưng sẽ cho phép dữ liệu cá thể của trường được sửa đổi thông qua loại tham chiếu.


Ví dụ, StringBuilder là loại tham chiếu có thể thay đổi trong thư viện khung .NET, thông qua đó giá trị chuỗi của một thể hiện được tạo ra từ loại này có thể được sửa đổi bằng cách nối thêm, xóa, thay thế hoặc chèn ký tự.


Một loại có thể thay đổi không nên được bắt nguồn từ một loại bất biến bởi vì có khả năng một phương thức ảo trong lớp dẫn xuất ghi đè lên nó để các thành viên bất biến được ghi đè.


Hạn chế chính của loại có thể thay đổi là trong khi truyền một đối tượng thuộc loại có thể thay đổi (như struct) thông qua việc gán biến cục bộ hoặc làm tham số cho phương thức, giá trị của đối tượng được truyền chứ không phải chính đối tượng. Bằng cách này, bản sao của đối tượng bị đột biến và không phải là bản gốc. Hành vi này có thể dẫn đến lỗi bất ngờ.

Định nghĩa này được viết trong bối cảnh của C #
Loại đột biến là gì? - định nghĩa từ techopedia