Tôi nhầm lẫn với từ khóa this
trong Java. Nếu một lớp có hai hàm tạo và chúng tôi sử dụng từ khóa this
trong một số phương thức, đối tượng được biểu diễn bằng this
được khởi tạo bằng cách sử dụng của hai hàm tạo nào?Sử dụng từ khóa 'này' trong các nhà xây dựng Java
Trả lời
Nó không quan tâm và không thể phân biệt được
Nó phần nào giống như xây dựng một chiếc xe hơi. Tùy thuộc vào các tính năng mà một hàm tạo khác được sử dụng, nhưng cuối cùng bạn có một chiếc xe hơi (điều này)
Bạn có thể nghĩ từ khóa this
là một trình giữ chỗ. Khi chạy, từ khóa đó được trao đổi với tham chiếu đối tượng của đối tượng mà bạn đang xử lý.
Nó không phải làm bất cứ điều gì với các nhà xây dựng, phân bổ bộ nhớ hoặc bất cứ điều gì như thế. this
từ khóa chỉ là tham chiếu đối tượng hiện tại.
Từ khóa this
có hai nghĩa và sự nhầm lẫn có thể xung quanh hai nghĩa này.
Trong hàm tạo, this(...)
giống như một lời gọi phương thức cho các hàm tạo. Trình biên dịch chọn hàm tạo nào để gọi dựa trên số và loại đối số bạn sử dụng.
Khi bạn sử dụng this
làm tham chiếu, điều đó có nghĩa là đối tượng này và hàm tạo nào đã được sử dụng không quan trọng.
Bạn cần phải phân biệt giữa this.
và this()
, có thể nói:
Hầu hết thời gian, bạn sử dụng this
như tham chiếu đến đối tượng hiện tại, ví dụ: tài liệu tham khảo của đối tượng này sẽ được thay thế trong thời gian chạy cho this
. Ví dụ: nếu bạn sử dụng this
làm tham số hoặc tham chiếu this.someMember
.
Bạn có thể có các hàm tạo khác nhau với các tham số khác nhau, tức là các hàm tạo quá tải. Khi bắt đầu một hàm tạo, bạn có thể gọi một hàm tạo khác bằng cách sử dụng this(parameter_1, ... parameter_n);
làm hướng dẫn đầu tiên.
Một lời giải thích hay về cả hai trường hợp có thể được tìm thấy tại the java tutorial about the this keyword.
Sử dụng this
trong thân phương pháp đề cập đến trường hợp của lớp mà phương thức tồn tại.
Điều này cũng ngụ ý rằng không thể sử dụng this
từ ngữ cảnh static
.
this
biểu thị dụ bản thân regarldless như thế nào dụ được xây dựng từ khóa
1.'this' đề cập đến đối tượng của lớp nó ở đâu used.Generally chúng tôi viết biến Ví dụ, nhà thầu và phương pháp trong class.All này các thành viên được đại diện bởi 'điều này'.
2.Khi một đối tượng được tạo ra cho một lớp, một tham chiếu mặc định cũng được tạo ra bên trong đối tượng.Không có gì ngoài 'this'.
3.Ví dụ cho này từ khóa:
Mẫu (int x) // Tham số Constructor {
này.x = x; // Lưu biến biến cục bộ x vào biến thể hiện của lớp hiện tại x
}
- 1. Sử dụng từ khóa "này" trong java
- 2. Mặc định nhà xây dựng trong Java
- 3. Xây dựng cây từ khóa bằng cách sử dụng perl
- 4. Sử dụng bộ nhớ của nhà xây dựng trong Haskell
- 5. Khởi tạo một lớp Scala từ Java, và sử dụng các thông số mặc định của các nhà xây dựng
- 6. Tại sao lại sử dụng các tác dụng phụ xấu trong các nhà xây dựng JavaScript?
- 7. Nhà xây dựng trong Java so với C++?
- 8. Xây dựng Trình tạo mã khóa 'Kích hoạt' trong JAVA
- 9. Sử dụng nhiều chuỗi nhà xây dựng cho một chuỗi
- 10. java: tại sao điều này không được phép thoát khỏi nhà xây dựng?
- 11. Nhà xây dựng ngầm là gì trên Java
- 12. Các trường riêng tư cài đặt Java bên trong các nhà xây dựng
- 13. Các nhà xây dựng bản ghi ẩn danh trong delphi
- 14. as3: sử dụng từ khóa này
- 15. Lợi ích của các nhà xây dựng chung
- 16. Định nghĩa lại các nhà xây dựng Array trong javascript
- 17. Trả lại sớm từ một nhà xây dựng Scala
- 18. các nhà xây dựng bên trong một không gian tên
- 19. Một mẫu thiết kế cho các nhà xây dựng
- 20. java lớp con: nhiều nhà xây dựng được kế thừa từ lớp cha trừu tượng
- 21. sử dụng hợp pháp của các nhà xây dựng Chức năng
- 22. Nhà xây dựng bản sao Weird
- 23. Thuật toán nào mà buildbot sử dụng để gán các nhà xây dựng cho nô lệ?
- 24. Sự mơ hồ giữa các nhà xây dựng quá tải
- 25. Nhà xây dựng rõ ràng bằng Lombok?
- 26. Biến đối số nhà xây dựng vào các instance variable
- 27. từ khóa này trong android
- 28. Thừa kế Java - từ khóa này
- 29. Nhà xây dựng giả lập JMockit
- 30. Thứ tự các nhà xây dựng gọi điện
cảm ơn hoa ;-) –