Object cloning là cách để tạo ra một bản sao chính xác của một đối tượng bị clone. Phương thức clone() được sử dụng để tạo ra một object mới.
Class của đối tượng mà chúng ta muốn clone phải được implements từ interface java.lang.Cloneable. Nếu chúng ta không implements interface Cloneable, phương thức clone() sinh ra lỗi ngoại lệ CloneNotSupportedException.
Phương thức phương thức clone() được định nghĩa trong lớp Object có cú pháp như sau:
1 |
|
Phương thức clone () tiết kiệm tác vụ xử lý bổ sung để tạo ra một bản sao chính xác của một đối tượng. Nếu chúng ta thực hiện nó bằng cách sử dụng từ khoá new sẽ mất rất nhiều tiến trình xử lý được thực hiện, đó là lý do tại sao chúng ta sử dụng object cloning.
Giảm thiểu tác vụ xử lý
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
|
Output:
101 An 101 An
Như bạn đã thấy trong ví dụ trên, cả hai biến tham chiếu có giá trị giống nhau. Vì phương thức clone() đã tạo ra một ô nhớ mới và sao chép giá trị của đối tượng này sang đối tượng khác.
Nếu bạn tạo một đối tượng khác bằng cách sử dụng từ khóa new và gán các giá trị của đối tượng khác cho đối tượng vừa tạo ra, nó sẽ mất nhiều tiến trình để xử lý trên đối tượng này. Vì vậy để tiết kiệm tác vụ xử lý ta sử dụng phương thức clone().
Nguồn tin: viettuts