Phương thức Java

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về các phương thức Java, cách xác định phương thức và cách sử dụng các phương thức trong chương trình Java với sự trợ giúp của các ví dụ.

Phương thức Java

Phương thức là một khối mã thực hiện một nhiệm vụ cụ thể.

Giả sử bạn cần tạo một chương trình để tạo một hình tròn và tô màu cho nó. Bạn có thể tạo hai phương pháp để giải quyết vấn đề này:

  • a method to draw the circle
  • a method to color the circle

Chia một vấn đề phức tạp thành các phần nhỏ hơn giúp chương trình của bạn dễ hiểu và có thể sử dụng lại.

Trong Java, có hai loại phương thức:

  • User-defined Methods: We can create our own method based on our requirements.
  • Standard Library Methods: These are built-in methods in Java that are available to use.

Đầu tiên chúng ta hãy tìm hiểu về các phương thức do người dùng định nghĩa.

Khai báo một phương pháp Java

Cú pháp để khai báo một phương thức là:

returnType methodName() {
  // method body
}

Đây,

  • returnType – It specifies what type of value a method returns For example if a method has an int return type then it returns an integer value.

    If the method does not return a value, its return type is void.
  • methodName – It is an identifier that is used to refer to the particular method in a program.
  • method body – It includes the programming statements that are used to perform some tasks. The method body is enclosed inside the curly braces { }.

Ví dụ,

int addNumbers() {
// code
}

Trong ví dụ trên, tên của phương thức là adddNumbers(). Và, kiểu trả về là int. Chúng ta sẽ tìm hiểu thêm về các kiểu trả về sau trong hướng dẫn này.

Đây là cú pháp đơn giản để khai báo một phương thức. Tuy nhiên, cú pháp hoàn chỉnh của việc khai báo một phương thức là

modifier static returnType nameOfMethod (parameter1, parameter2, ...) {
  // method body
}

Đây,

  • modifier – It defines access types whether the method is public, private, and so on. To learn more, visit Java Access Specifier.
  • static – If we use the static keyword, it can be accessed without creating objects.

    For example, the sqrt() method of standard Math class is static. Hence, we can directly call Math.sqrt() without creating an instance of Math class.
  • parameter1/parameter2 – These are values passed to a method. We can pass any number of arguments to a method.

Gọi một phương thức trong Java

Trong ví dụ trên, chúng ta đã khai báo một phương thức có tên addNumbers(). Bây giờ, để sử dụng phương thức này, chúng ta cần gọi nó.

Đây là cách chúng ta có thể gọi addNumbers()phương thức.

// calls the method
addNumbers();

Hoạt động của cuộc gọi phương thức Java

Ví dụ 1: Phương thức Java

class Main {

  // create a method
  public int addNumbers(int a, int b) {
    int sum = a + b;
    // return value
    return sum;
  }

  public static void main(String[] args) {
    
    int num1 = 25;
    int num2 = 15;

    // create an object of Main
    Main obj = new Main();
    // calling method
    int result = obj.addNumbers(num1, num2);
    System.out.println("Sum is: " + result);
  }
}

Đầu ra

Sum is: 40

Trong ví dụ trên, chúng ta đã tạo một phương thức có tên addNumbers(). Phương thức nhận hai tham số a và b . Lưu ý dòng,

int result = obj.addNumbers(num1, num2);

Ở đây, chúng ta đã gọi phương thức bằng cách truyền hai đối số num1 và num2 . Vì phương thức đang trả về một số giá trị, chúng tôi đã lưu trữ giá trị trong biến kết quả .

Lưu ý : Phương thức không phải là tĩnh. Do đó, chúng ta đang gọi phương thức bằng cách sử dụng đối tượng của lớp.

Kiểu trả về phương pháp Java

Một phương thức Java có thể trả về hoặc không thể trả về một giá trị cho lời gọi hàm. Chúng tôi sử dụng câu lệnh return để trả về bất kỳ giá trị nào. Ví dụ,

int addNumbers() {
...
return sum;
}

Ở đây, chúng tôi đang trả về tổng biến . Vì kiểu trả về của hàm là int. Biến tổng phải là intkiểu. Nếu không, nó sẽ tạo ra một lỗi.

Ví dụ 2: Kiểu trả về của phương thức

class Main {

// create a method
  public static int square(int num) {

    // return statement
    return num * num;
  }

  public static void main(String[] args) {
    int result;

    // call the method
    // store returned value to result
    result = square(10);

    System.out.println("Squared value of 10 is: " + result);
  }
}

Đầu ra :

Squared value of 10 is: 100

Trong chương trình trên, chúng ta đã tạo một phương thức có tên square(). Phương thức này nhận một số làm tham số của nó và trả về bình phương của số đó.

Ở đây, chúng tôi đã đề cập đến kiểu trả về của phương thức là int. Do đó, phương thức phải luôn trả về một giá trị số nguyên.Biểu diễn của phương thức Java trả về một giá trị

Lưu ý : Nếu phương thức không trả về bất kỳ giá trị nào, chúng ta sử dụng từ khóa void làm kiểu trả về của phương thức. Ví dụ,

public void square(int a) {
  int square = a * a;
  System.out.println("Square is: " + a);
}

Tham số phương thức trong Java

Tham số phương thức là một giá trị được phương thức chấp nhận. Như đã đề cập trước đó, một phương thức cũng có thể có bất kỳ số lượng tham số nào. Ví dụ,

// method with two parameters
int addNumbers(int a, int b) {
  // code
}

// method with no parameter
int addNumbers(){
  // code
}

Nếu một phương thức được tạo với các tham số, chúng ta cần truyền các giá trị tương ứng trong khi gọi phương thức. Ví dụ,

// calling the method with two parameters
addNumbers(25, 15);

// calling the method with no parameters
addNumbers()

Ví dụ 3: Tham số phương pháp

class Main {

  // method with no parameter
  public void display1() {
    System.out.println("Method without parameter");
  }

  // method with single parameter
  public void display2(int a) {
    System.out.println("Method with a single parameter: " + a);
  }

  public static void main(String[] args) {
    
    // create an object of Main
    Main obj = new Main();

    // calling method with no parameter
    obj.display1();
    
    // calling method with the single parameter
    obj.display2(24);
  }
}

Đầu ra

Method without parameter
Method with a single parameter: 24

Ở đây, tham số của phương thức là int. Do đó, nếu chúng ta chuyển bất kỳ kiểu dữ liệu nào khác thay thế int, trình biên dịch sẽ báo lỗi. Đó là bởi vì Java là một ngôn ngữ được đánh máy mạnh.

Lưu ý : Đối số 24 được truyền cho display2()phương thức trong khi gọi phương thức được gọi là đối số thực.

Tham số num được chấp nhận bởi định nghĩa phương thức được gọi là một đối số chính thức. Chúng ta cần xác định loại đối số chính thức. Và, loại đối số thực tế và đối số chính thức phải luôn khớp với nhau.

Phương pháp Thư viện Chuẩn

Các phương thức thư viện chuẩn là các phương thức tích hợp sẵn trong Java luôn sẵn sàng để sử dụng. Các thư viện tiêu chuẩn này đi kèm với Thư viện Lớp Java (JCL) trong tệp lưu trữ Java (* .jar) với JVM và JRE.

Ví dụ,

  • print() is a method of java.io.PrintSteam. The print("...") method prints the string inside quotation marks.
  • sqrt() is a method of Math class. It returns the square root of a number.

Đây là một ví dụ hoạt động:

Ví dụ 4: Phương pháp thư viện chuẩn Java

public class Main {
  public static void main(String[] args) {
    
    // using the sqrt() method
    System.out.print("Square root of 4 is: " + Math.sqrt(4));
  }
}

Đầu ra :

Square root of 4 is: 2.0

Để tìm hiểu thêm về các phương pháp thư viện chuẩn, hãy truy cập Phương pháp thư viện Java .

Ưu điểm của việc sử dụng các phương pháp là gì?

1. Ưu điểm chính là khả năng tái sử dụng mã . Chúng ta có thể viết một phương thức một lần và sử dụng nó nhiều lần. Chúng tôi không phải viết lại toàn bộ mã mỗi lần. Hãy nghĩ về nó như là, “viết một lần, tái sử dụng nhiều lần”.

Ví dụ 5: Phương pháp Java để tái sử dụng mã

public class Main {

  // method defined
  private static int getSquare(int x){
    return x * x;
  }

  public static void main(String[] args) {
    for (int i = 1; i <= 5; i++) {

      // method call
      int result = getSquare(i);
      System.out.println("Square of " + i + " is: " + result);
    }
  }
}

Đầu ra :

Square of 1 is: 1
Square of 2 is: 4
Square of 3 is: 9
Square of 4 is: 16
Square of 5 is: 25

Trong chương trình trên, chúng ta đã tạo phương thức có tên getSquare()để tính bình phương của một số. Ở đây, phương pháp được sử dụng để tính bình phương của các số nhỏ hơn 6 .

Do đó, cùng một phương pháp được sử dụng lặp đi lặp lại.

2. Các phương pháp làm cho mã dễ đọc hơn và dễ gỡ lỗi hơn. Ở đây, getSquare()phương thức giữ mã để tính toán hình vuông trong một khối. Do đó, làm cho nó dễ đọc hơn.









Gõ tìm kiếm nhanh...