từ khóa này trong Java - Tất cả những gì bạn cần biết



Bài viết này tập trung vào các khía cạnh khác nhau của việc sử dụng từ khóa này trong Java. Nó cũng sẽ cho bạn biết một số sự kiện quan trọng để đối phó với từ khóa này.

điều này là một từ khóa đại diện cho một đối tượng trong một phương thức hoặc một hàm tạo. Về cơ bản nó được sử dụng đểloại bỏ sự nhầm lẫn giữa các thuộc tính lớp và các tham số có cùng tên. Trong bài viết này, tôi sẽ cho bạn biết các khía cạnh và cách sử dụng khác nhau của điều này từ khóa trong .

Dưới đây là các chủ đề mà tôi sẽ đề cập trong bài viết này:





Vậy hãy bắt đầu!

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

điều này từ khóa trong đại diện cho hiện tại . Nó chủ yếu được sử dụng để truy cập các thành viên khác trong cùng một lớp. Với sự giúp đỡ của điều này từ khóa, bạn có thể truy cập các phương thức, trường và người xây dựng của cùng một lớp trong lớp.



Bây giờ, hãy tiến xa hơn và hiểu nhu cầu của điều này từ khóa trong Java.

Tại sao sử dụng từ khóa này trong Java?

Phương châm chính của sử dụng từ khóa này là để phân biệt tham số chính thức và của lớp. Nếu trong trường hợp, tham số hình thức và các thành viên dữ liệu của lớp là giống nhau thì dẫn đến sự không rõ ràng. Vì vậy, để phân biệt giữa tham số chính thức và thành viên dữ liệu của lớp, thành viên dữ liệu của lớp phải được đặt trước ' điều này Từ khóa ”.

Về cơ bản, 'điều này' từ khóa có thể được sử dụng theo hai cách.



  1. điều này.
  2. điều này()

1. này.

Nó có thể được sử dụng để phân biệt và các tham số chính thức của phương thức hoặc hàm tạo. Không chỉ vậy, nó luôn trỏ đến đối tượng lớp hiện tại. Cú pháp của điều này từ khóa như hình dưới đây:

Cú pháp

cách đóng ứng dụng java
this.data thành viên của lớp hiện tại

Ghi chú: Nếu có bất kỳ biến nào đứng trước 'điều này', thì JVM coi biến đó như một biến lớp .

2. this ()

Nó có thể được sử dụng để gọi một người xây dựng bên trong khác mà không tạo các đối tượng nhiều lần cho cùng một lớp.

Cú pháp

this () // không gọi phương thức khởi tạo tham số hoặc mặc định this (value1, value2, .....) // gọi phương thức tạo tham số

Bây giờ bạn biết những gì là điều này từ khóa và tại sao bạn cần nó, hãy đi sâu hơn vào bài viết này và hiểu các khía cạnh khác nhau điều này từ khóa có thể được sử dụng trong Java .

Sử dụng từ khóa này

Có 6 cách trong đó từ khóa này có thể được sử dụng trong Java. Chúng như sau:

  1. Được sử dụng với một trường
  2. Được sử dụng để gọi một phương thức khởi tạo
  3. Được sử dụng để trả về cá thể lớp hiện tại
  4. Được sử dụng làm tham số phương thức
  5. Được sử dụng để gọi một phương thức lớp hiện tại
  6. Được sử dụng làm đối số trong lời gọi hàm tạo

Bây giờ, hãy đi vào chi tiết của từng phương pháp này.

java gấp đôi thành int vòng

1. từ khóa này có thể được sử dụng với trường / Ẩn biến

điều này từ khóa có thể rất hữu ích trong Biến ẩn . Ở đây, bạn không thể tạo hai i cùng tên. Tuy nhiên, có thể tạo một biến thể hiện và một biến cục bộ có cùng tên. Trong trường hợp này, biến cục bộ sẽ có thể ẩn biến cá thể. Đây được gọi là Biến ẩn . Bây giờ, hãy hiểu điều này một cách chi tiết hơn với sự trợ giúp của một ví dụ.

package Edureka import java.util. * public class field {int j, n // Kiểm tra phương thức khởi tạo tham số (int j, int n) {this.j = j this.n = n} void display () {// Hiển thị giá trị của biến j và n System.out.println ('j =' + j + 'n =' + n)} public static void main (String [] args) {field obj = new field (27, 01) obj.display ( )}}

Đầu ra:

j = 27 n = 01

Trong ví dụ trên, các đối số chính thức và các biến cá thể giống nhau. Do đó, để phân biệt giữa các biến này, tôi đã sử dụng t của anh ấy từ khóa để xuất các biến cục bộ. Vì vậy, đây là tất cả về ẩn biến.

Bây giờ chúng ta hãy xem làm thế nào điều này từ khóa trong Java có thể được sử dụng để gọi một phương thức khởi tạo.

2. từ khóa này có thể được sử dụng để gọi một hàm tạo

lệnh gọi hàm tạo this () có thể được sử dụng để gọi phương thức khởi tạo của lớp hiện tại. Nó cũng có thể được sử dụng để sử dụng lại hàm tạo. Bạn cũng có thể gọi kỹ thuật này là chuỗi nhà xây dựng . Hãy lấy một ví dụ nhỏ và hiểu cách điều này() Được sử dụng.

package Edureka import java.util. * public class Ví dụ {{int j, n // Hàm tạo mặc định Ví dụ () {this (27, 01) System.out.println ('Bên trong hàm tạo mặc định n')} // Ví dụ về hàm tạo được tham số hóa (int j, int n) {this.j = j this.n = n System.out.println ('Bên trong hàm tạo tham số hóa')} public static void main (String [] args) {Ví dụ obj = new Ví dụ ()} }

Đầu ra:

Hàm tạo tham số bên trong Hàm tạo mặc định bên trong

Trong ví dụ trên, bạn có thể thấy rằng “ điều này Từ khóa ”được sử dụng để gọi một hàm tạo bị quá tải trong cùng một .

3. từ khóa này có thể được sử dụng để trả về cá thể lớp hiện tại

Ở đây, bạn có thể trở lại điều này từ khóa như một câu lệnh từ phương thức. Trong trường hợp này, kiểu trả về của phương thức phải là kiểu lớp. Hãy hiểu điều này với sự trợ giúp của một ví dụ.

public class Edureka {int j, int n // Hàm tạo mặc định Edureka () {j = 100 n = 200} // Phương thức trả về cá thể lớp hiện tại Edureka get () {return this} // Hiển thị giá trị của biến j và n void display () {System.out.println ('j =' + j + 'n =' + n)} public static void main (String [] args) {Edureka obj = new Edureka () obj.get (). display ()}}

Đầu ra:

j = 100, n = 200

4. từ khóa này có thể được sử dụng làm tham số phương thức

điều này từ khóa có thể được sử dụng bên trong phương thức để gọi một phương thức khác từ cùng một lớp. Ví dụ dưới đây chứng minh điều tương tự.

public class Edureka {int j, n // Hàm tạo mặc định Edureka () {j = 100 n = 200} // Phương thức nhận từ khóa 'this' dưới dạng tham số void display (Edureka obj) {System.out.println ('j = '+ j +' n = '+ n)} // Phương thức trả về cá thể lớp hiện tại void get () {display (this)} public static void main (String [] args) {Edureka obj = new Edureka () obj. được() } }

Đầu ra:

j = 100, n = 200

5. từ khóa này được sử dụng như một phương thức lớp hiện tại

điều này từ khóa có thể được sử dụng để gọi phương thức của lớp hiện tại. Hãy hiểu điều đó với sự trợ giúp của một ví dụ.

pubic class Edureka {void display () {// gọi fuction show () this.show () System.out.println ('Inside display function')} void show () {System.out.println ('Inside show funcion' )} public static void main (String args []) {Edureka j = new Edureka () j.display ()}}

Đầu ra:

Chức năng hiển thị bên trong Chức năng hiển thị bên trong

6. từ khóa này được sử dụng như một đối số trong lời gọi hàm tạo

Bạn có thể vượt qua điều này từ khóa trong hàm tạo cũng có. Sẽ rất hữu ích nếu bạn phải sử dụng trong nhiều lớp. Bây giờ chúng ta hãy hiểu điều tương tự với sự trợ giúp của một ví dụ.

public class Y {X obj // Phương thức khởi tạo được tham số hóa với đối tượng của X // dưới dạng tham số Y (X obj) {this.obj = obj // gọi phương thức hiển thị của lớp X obj.display ()}} class X {int x = 45 // Cấu trúc mặc định tạo đối tượng Y // với việc truyền đối tượng này làm đối số trong // phương thức xây dựng X () {Y obj = new Y (this)} // để hiển thị giá trị của x void display () {System.out.println ('Giá trị của x trong Lớp X:' + x)} public static void main (String [] args) {X obj = new X ()}}

Đầu ra :

Giá trị của x trong Lớp X: 45

Vì vậy, đây là cách bạn có thể sử dụng điều này từ khóa làm đối số trong lệnh gọi hàm tạo. Đó là tất cả về các ứng dụng khác nhau của điều này từ khóa trong Java. Bây giờ chúng ta hãy xem một số yếu tố quan trọng của việc sử dụng từ khóa này .

Các yếu tố quan trọng của từ khóa này:

  1. Bạn không thể sử dụng siêu và điều này từ khóa trong một phương pháp tĩnh và trong một khối khởi tạo tĩnh mặc dù bạn đang giới thiệu các thành viên tĩnh.

    bạn có thể tạo một mảng các đối tượng trong java không
  2. Bạn nên gọi siêu() điều này() chỉ gọi các câu lệnh bên trong các hàm tạo và chúng phải là câu lệnh đầu tiên trong các hàm tạo.

Điều này đưa chúng ta đến phần cuối của bài viết về điều này từ khóa trong Java. Tôi hy vọng bạn tìm thấy nó thông tin.

Kiểm tra của Edureka, 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.

Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần nhận xét của bài viết “từ khóa này trong Java” và chúng tôi sẽ liên hệ lại với bạn trong thời gian sớm nhất.