1. Tìm hiểu sở lược về phương thức trong Java

Một phương thức trong Java là một tập hợp các lệnh mà được nhóm cùng với nhau để thực hiện một hành động. Ví dụ khi bạn gọi phương thức System.out.print, hệ thống thực sự thực thi một vài lệnh để hiển thị một thông báo trên bàn điều khiển console. Phương thức tính giao diện cho phần lớn các lớp. Trong khi đó Java cho phép bạn định nghĩa các lớp mà không cần phương thức. Ta cần định nghĩa phương thức truy cập dữ liệu mà bạn đã lưu trong một lớp.

Một phương thức có thể trả về một giá trị hoặc không trả về gì cả . Một phương thức có thể có hoặc không có tham số truyền vào.

Cú pháp :

access_specifier modifier datatype method_name(parameter_list)
{
    //cede
}

Trong đó

  • access_specifie : Chỉ định truy cập vào phương thức.
  • modifier : Cho phép bạn gán các thuộc tính cho phương thức.
  • datatype : Kiểu dữ liệu mà giá trị của nó được phương thức trả về. Nếu không có một giá trị nào được trả về, kiểu dữ liệu có thể là void.
  • method_name : Tên của phương thức
  • parameter_list : Chứa tên của tham số được sử dụng trong phương thức và kiểu dữ liệu. Dấu phẩy được dùng để phân cách các tham số.

Ví dụ :

class Main {
    static int x = 10; //variable
    public static void show() //method
    {
        System.out.println(x);
    }
    public static void main(String args[]) {
        Temp t = new Temp(); // object 1
        t.show(); //method call
        Temp t1 = new Temp(); // object 2
        t1.x = 20;
        t1.show();
    }
}

Ta cũng có các chỉ định truy cập để giới hạn khả năng truy nhập vào một phương thức.

  • Public : Phương thức có chỉ định truy xuất public có thể được nhìn thấy từ mọi gói hoặc mọi lớp.
  • Protected : Các lớp mở rộng từ lớp hiện hành trong cùng một gói, hoặc tại các gói khác nhau có thể truy cập các phương thức sử dụng chỉ định truy xuất này.
  • Private : Phương thức này có thể được truy cập nhờ phương thức  trên cùng một lớp.

2. Tạo một phương thức trong Java

Một phương thức phải được khai báo trong một lớp. Nó được định nghĩa với tên của phương thức, theo sau là dấu ngoặc đơn () . Java cung cấp một số phương thức được xác định trước, chẳng hạn như System.out.println() , nhưng bạn cũng có thể tạo các phương thức của riêng mình để thực hiện một số hành động nhất định

Cú pháp:

public static int tenPhuongThuc(int a, int b) {
  // phan_than_phuong_thuc
}

Trong đó :

  • public static : Là modifier.
  • int : Kiểu trả về
  • tenPhuongThuc : Tên phương thức
  • a , b : Các tham số chính thức
  • int a , int b: Danh sách các tham số

Các phương thức cũng còn được biết như các Procedure (thủ tục) hoặc Function (hàm):

  • Procedure : Chúng không trả về bất kỳ giá trị nào.
  • Function : Chúng trả về giá trị.

Sự định nghĩa phương thức bao gồm một header và phần thân phương thức. Tương tự như sau:

modifier kieuTraVe tenPhuongThuc (Danh sach tham so) {
 // Than_phuong_thuc
}

Với :

  • modifier : Nó định nghĩa kiểu truy cập của phương thức và nó là tùy ý để sử dụng.
  • kieuTraVe : Phương thức có thể trả về một giá trị.
  • tenPhuongThuc : Đây là tên phương thức.
  • Danh sach tham so : Danh sách các tham số, nó là kiểu, thứ tự, và số tham số của một phương thức. Đây là tùy ý, phương thức có thể không chứa tham số nào.
  • Than_phuong_thuc : Phần thân phương thức định nghĩa những gì phương thức đó thực hiện với các lệnh.

Ví dụ : code nguồn của phương thức max()

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

Để sử dụng một phương thức ta nên gọi nó. Có hai cách để gọi một phương thức, ví dụ: phương thức trả về một giá trị hoặc phương thức không trả về giá trị nào.

Tiến trình gọi phương thức là đơn giản. Khi một chương trình gọi phương thức, điều khiển chương trình truyền tín hiệu tới phương thức được gọi. Phương thức được gọi này sau đó trả về điều khiển tới caller trong hai điều kiện, khi:

  • Lệnh return được thực thi.
  • Tiến tới dấu ngoặc đóng ở cuối phương thức.

Ví dụ: Phương thức trả về void được xem như là gọi tới một lệnh

System.out.println("Day la Laptrinhtudau.com!");

 class Main{
   
   public static void main(String[] args) {
      int a = 11;
      int b = 6;
      int c = minFunction(a, b);
      System.out.println("Gia tri nho nhat = " + c);
   }

   /** Tra ve gia tri nho nhat cua hai so */
   public static int minFunction(int n1, int n2) {
      int min;
      if (n1 > n2)
         min = n2;
      else
         min = n1;

      return min; 
   }
}

Kết quả

Gia tri nho nhat = 6

4. Các loại phương thức trong Java

Java đã hỗ trợ 2 loại phương thức khác nhau :

  • Phương thức trong viện chuẩn
  • Phương thức tự định nghĩa

4.1. Phương thức trong thư viện chuẩn Java

Đây là các phương thức được xác định trước có trong thư viện Java. Chúng tôi có thể sử dụng các phương thức này mà không có bất kỳ thay đổi nào. Ví dụ, chúng ta có phương thức in() của lớp WELFARE cho phép chúng ta in một câu lệnh. Chúng ta có thể gọi phương thức này trực tiếp để in câu lệnh như bạn có thể thấy trong ví dụ dưới đây.

public class Main {
  public static void main(String[] args) {
    System.out.println("Đây là một phương pháp thư viện chuẩn");
  }
}

Kết quả

Đây là một phương pháp thư viện chuẩn

4.2. Phương pháp thức tự định nghĩa

Khi chúng ta tạo hàm hoặc phương thức của riêng mình, ta gọi nó là phương thức do người dùng định nghĩa. Chúng ta có thể nhóm các hành động tương tự lại với nhau trong một hàm. Ví dụ, add() là một phương pháp cộng các số. Do đó, các phương thức được định nghĩa sử dụng để xác định một nhiệm vụ hoặc chức năng.

Chúng ta phải luôn tạo một phương thức bên trong một lớp. Một phương thức chứa một phương thức tên tiếp theo dấu ngoặc đơn () . Cú pháp để tạo một phương thức

access_type return_type method_name(arguments) {
//method_body
}

Trong đó :

  • Access type nó chỉ định công cụ sửa đổi truy cập như public, private, protected.
  • return_type Chỉ định nếu phương thức trả về bất kỳ giá trị nào. Nó có thể là void (không có kiểu trả về) hoặc chỉ định một kiểu như String hoặc int
  • method_name Bất kỳ tên hợp lệ nào phù hợp với hành vi của phương thức
  • argument Nếu phương thức yêu cầu bất kỳ tham số hoặc đối số nào để thực hiện một thao tác. Nó là tùy chọn.
  • method_body Chức năng của phương thức

Ví dụ:

class Main{
  
  public void add() {
    System.out.println("Addition method");
  }
}