Sử dụng lớp bao bọc trong Java
Các lớp trình bao bọc trong Java cung cấp một cách để bao bọc hoặc biểu thị giá trị của các kiểu dữ liệu nguyên thủy dưới dạng một đối tượng. Bằng cách tạo một đối tượng cho lớp trình bao bọc, một trường dữ liệu được tạo và trong trường này, chúng ta có thể lưu trữ giá trị của một kiểu dữ liệu nguyên thủy Show
Nó cũng bao gồm các phương thức để giải nén các đối tượng trở lại các kiểu dữ liệu nguyên thủy. Nó là một trong những lớp được cung cấp trong java. lang và tất cả các lớp bao bọc nguyên thủy trong Java là bất biến Phạm viBài viết này nhằm mục đích
Các kiểu dữ liệu nguyên thủyCác kiểu dữ liệu nguyên thủy hoạt động như các khối xây dựng cơ bản của thao tác dữ liệu trong Java. Nhưng để hiểu rõ hơn về các lớp Trình bao bọc, trước tiên chúng ta hãy hiểu các Kiểu dữ liệu là gì và các Kiểu dữ liệu nguyên thủy cụ thể là gì Vì Java là ngôn ngữ lập trình được nhập tĩnh, điều đó có nghĩa là không thể sử dụng bất kỳ biến nào nếu không khai báo nó. Chúng phải được khai báo trước khi chúng có thể được sử dụng Vì vậy, để khai báo các biến chúng ta sử dụng kiểu dữ liệu. Kiểu dữ liệu về cơ bản là kiểu của một biến xác định giá trị mà nó có thể chứa và các thao tác có thể được thực hiện trên nó Các kiểu dữ liệu trong Java được chia thành hai loại sau
Các kiểu dữ liệu nguyên thủy có một ràng buộc là chúng có thể chứa dữ liệu cùng loại và có kích thước cố định tùy thuộc vào loại dữ liệu. Ví dụ 1 byte chỉ lưu được số nguyên trong khoảng từ -128 đến 127. Ngoài ra, các kiểu dữ liệu nguyên thủy luôn có một giá trị Giới thiệu về các lớp Wrapper trong JavaChúng ta đã thảo luận về Các kiểu dữ liệu nguyên thủy trong phần trước. Vì các Kiểu dữ liệu nguyên thủy không thể được sử dụng trực tiếp làm đối tượng, đó là lý do tại sao các lớp Trình bao bọc xuất hiện Các lớp chung hoạt động với các đối tượng và không hỗ trợ Nguyên thủy. Do đó, các lớp Wrapper là cần thiết khi chúng chuyển đổi các kiểu dữ liệu nguyên thủy thành các đối tượng và các đối tượng thực sự quan trọng nếu chúng ta cần sửa đổi các đối số được truyền trong một phương thức. Bây giờ, hãy thảo luận chi tiết về các lớp Wrapper Ngôn ngữ lập trình Java cung cấp java. gói lang có các lớp cơ bản cho thiết kế và các lớp quan trọng nhất trong số đó là Đối tượng và Lớp Vì vậy, các lớp trình bao bọc Java bao bọc hoặc biểu thị các giá trị của các kiểu dữ liệu nguyên thủy dưới dạng một đối tượng. Khi một đối tượng được tạo cho một lớp trình bao bọc, nó chứa một trường có thể lưu trữ các kiểu dữ liệu nguyên thủy Đối tượng của một loại chỉ chứa một trường thuộc loại cụ thể đó, có nghĩa là một loại đối tượng Double chỉ chứa loại trường kép, đại diện cho giá trị đó để có thể lưu trữ một tham chiếu đến nó trong một biến của loại tham chiếu Dưới đây là các Kiểu dữ liệu nguyên thủy và các lớp Trình bao bọc tương ứng của chúng Kiểu dữ liệu nguyên thủy Lớp trình bao bọcchar CharacterbyteByteshortShortintIntegerlongLongfloatFloatdoubleDoublebooleanBoolean Tại sao chúng ta cần các lớp trình bao bọc trong Java?
Luồng quy trình của Lớp trình bao bọc trong JavaTrong Java Wrapper Classes, đối tượng được tạo với các trường hoặc thuộc tính trong đó các kiểu dữ liệu nguyên thủy có thể được lưu trữ Tạo đối tượng WrapperSử dụng Trình xây dựng lớp WrapperChúng ta có thể tạo một đối tượng trình bao bọc bằng cách sử dụng lớp trình bao bọc và hàm tạo của nó bằng cách truyền giá trị cho nó cú pháp
Ghi chú Sự khác biệt trong việc sử dụng các phương thức khác và phương thức tĩnh valueOf() là - Bằng cách sử dụng phương thức Constructor hoặc Wrapper Class, chúng ta sẽ luôn tạo một đối tượng mới sẽ cấp phát một bộ nhớ mới trong heap mỗi lần, trong khi sử dụng phương thức tĩnh valueOf(), Các tính năng của các lớp trình bao bọc JavaSửa đổi giá trị trong chức năngChúng ta có hàm 'gọi theo giá trị' trong lập trình Java, bằng cách sử dụng hàm này, chúng ta có thể sửa đổi các đối số được truyền vào một phương thức với sự trợ giúp của các đối tượng được chuyển đổi từ các kiểu dữ liệu nguyên thủy. Nếu đối số không phải là hằng số và nó cần được sửa đổi, chúng ta có thể truyền các đối tượng và có thể sửa đổi các giá trị cho phù hợp đồng bộ hóaĐể hỗ trợ đồng bộ hóa Java, cần có một đối tượng. Nó hoạt động thành các đối tượng trong đa luồng. Đối với việc xác định các khối trong đa luồng, các đối tượng được yêu cầu Các khối được đồng bộ hóa trong Java được đánh dấu bằng từ khóa được đồng bộ hóa. Khối này trong Java được đồng bộ hóa trên một số đối tượng. Tất cả các khối được đồng bộ hóa trên cùng một đối tượng chỉ có thể có một luồng thực thi bên trong chúng tại một thời điểm. Tất cả các luồng khác cố gắng vào khối được đồng bộ hóa đều bị chặn cho đến khi luồng bên trong khối được đồng bộ hóa thoát khỏi khối Tuần tự hóaĐể thực hiện tuần tự hóa, đối tượng được chuyển đổi trong các luồng. Đối tượng có thể được lấy lại bằng cách sử dụng các lớp bao bọc java. Về cơ bản, lớp của đối tượng phải triển khai giao diện Serializable trực tiếp hoặc gián tiếp java. gói sử dụngViệc triển khai các lớp tiện ích trong **java. util **gói là để khớp với các đối tượng và các lớp trình bao bọc cũng giúp đạt được điều tương tự khung bộ sưu tậpCác lớp khung bộ sưu tập Java như ArrayList, HashSet, Vector, LinkedList, v.v. chỉ lưu trữ các đối tượng tôi. e. kiểu tham chiếu và không phải kiểu nguyên thủy. Vì vậy, các đối tượng là thể hiện của các lớp bao bọc và đó là lý do tại sao nó giúp ích cho việc này Các phương thức được hỗ trợ bởi các lớp WrapperTất cả các lớp bao bọc số là các lớp con của lớp trừu tượng Số như Byte, Integer, Double, Short, Float, Long Một số phương thức được sử dụng thường xuyên mà tất cả các lớp con của lớp Số thực hiện được liệt kê trong bảng sau MethodMethod DescriptiontypeValue() Chuyển đổi giá trị của một đối tượng Số như Integer, Float hoặc Double thành kiểu dữ liệu nguyên thủy đã chỉ định và trả về valuecompareTo() So sánh đối tượng Number này với đối số truyền quaequals() Xác định xem đối tượng Number này có bằng đối sốvalueOf không Có nhiều phương thức như vậy được triển khai bởi các lớp con của lớp Số. Bảng trên chỉ liệt kê một vài trong số chúng hộp tự độngAutoboxing là khi trình biên dịch Java thực hiện chuyển đổi tự động các kiểu dữ liệu nguyên thủy thành đối tượng của các lớp trình bao bọc tương ứng của chúng. Ví dụ: chuyển đổi một int thành Integer, double thành Double, v.v. Trình biên dịch Java áp dụng autoboxing khi một giá trị nguyên thủy là
Ví dụ
mở hộpNó chỉ là quá trình ngược lại của autoboxing. Mở hộp đang tự động chuyển đổi một đối tượng thuộc loại trình bao bọc (ví dụ: Số nguyên) thành giá trị nguyên thủy (int) tương ứng của nó Trình biên dịch Java áp dụng mở hộp khi một đối tượng của lớp trình bao bọc được
Ví dụ 0
Các lớp Java Wrapper Ví dụ1. Các kiểu nguyên thủy cho các đối tượng bao bọc 1 Lớp trình bao bọc tùy chỉnh trong JavaVì các lớp Trình bao bọc Java bao bọc các kiểu dữ liệu nguyên thủy. Tương tự như vậy, chúng ta cũng có thể tạo lớp trình bao bọc tùy chỉnh trong Java để bao bọc một kiểu dữ liệu nguyên thủy Mục đích của trình bao bọc là gì?Trình bao bọc được sử dụng cho hai mục đích chính. để chuyển đổi dữ liệu sang định dạng tương thích hoặc để ẩn sự phức tạp của thực thể bên dưới bằng cách sử dụng trừu tượng . Các ví dụ bao gồm trình bao bọc đối tượng, trình bao bọc chức năng và trình bao bọc trình điều khiển.
Lớp bao bọc là gì và công dụng của nó?Các lớp trình bao bọc cung cấp cách sử dụng các kiểu dữ liệu nguyên thủy ( int , boolean , v.v. ) như các đối tượng. Bảng bên dưới hiển thị kiểu nguyên thủy và lớp trình bao bọc tương đương. Kiểu dữ liệu nguyên thủy. lớp bọc |