Class, phương thức và trường trong Java | Laptrinhcanban.com

Class, phương thức và trường trong Java

Cùng tìm hiểu về class, phương thức và trường trong Java. Bạn sẽ biết khái niệm cũng như cách sử dụng của chúng trong Java sau bài học này.

Class (lớp) trong Java

Class trong Java là gì

Java là ngôn ngữ lập trình hướng đối tượng, và cơ sở của nó chính là class. Class còn được gọi là lớp trong Java.

Chi tiết về class sẽ được Kiyoshi hướng dẫn trong chuyên đề về lập trình hướng đối tượng, còn trong phần nhập môn Java này, chúng ta có thể hiểu đơn giản class trong Java là một tập hợp nhằm thực hiện một công việc nào đó trong chương trình.

Ví dụ chúng ta có class Hello sau đây:

class Hello{
public static void main(String[] args){
System.out.println("Hello");
}
}

Class Hello ở trên được tạo ra để thực hiện việc xuất dòng chữ “Hello” ra màn hình. Và một chương trình Java thì bao gồm từ một đến vô số các class từ đơn giản đến phức tạp, với mỗi class được tạo ra để thực hiện một số công việc khác nhau, và tất cả hợp lại để hoàn thành xử lý trong chương trình.

Khai báo class trong Java

Chúng ta sử dụng cú pháp sau để khai báo class trong Java:

class classname{
  // ...
}

Chúng ta sử dụng từ khóa class để bắt đầu việc khai báo, sau đó ghi tên của class (classname), và cuối cùng là phần miêu tả các thành phần của class ở giữa cặp dấu {}.

Các thành phần của một class bao gồm phương thức (method) nhằm mô tả hành động thực hiện bên trong class, và các trường (field) nhằm lưu trữ thông tin được xử lý bên trong class.

Một class có thể không có phương thức lẫn trường mà chỉ chứa một xử lý đơn giản giống như là class Hello ở trên, hoặc là chứa rất nhiều phương thức hoặc trường bên trong nó khi có nhiều xử lý phức tạp, giống như ví dụ sau:

//Khai báo class MayTinh để thực hiện việc cộng trừ
class MayTinh{

//Phương thức main mặc định được xử lý đầu tiên
public static void main(String[] args){

//Tạo một máy tính cụ thể từ class MayTinh
MayTinh maytinh = new MayTinh();
maytinh.plus(10,5); //Chạy phương thức plus
maytinh.minus(9,2); //Chạy phương thức minus
}

//Phương thức plus nhằm thực hiện phép cộng
void plus(int val1, int val2){
System.out.println(val1 + val2);
}

//Phương thức minus nhằm thực hiện phép trừ
void minus(int val1, int val2){
System.out.println(val1 - val2);
}
}

Class MayTinh ở trên bao gồm 3 phương thức, trong đó phương thức main là phương thức mặc định được xử lý đầu tiên trong class, và 2 phương thức là plusminus nhằm thực hiện các phép tính cộng trừ.

Và chúng ta cũng có thể thêm vào các trường để lưu trữ các thông tin như kết quả của phép toán trong class chẳng hạn.

Các loại class trong Java

Trong Java có 2 loại class, đó là các class có sẵn trong Javaclass Java do người dùng định nghĩa.

Trong Java có rất nhiều class có sẵn để thực hiện các chức năng thông thường hay được sử dụng. Ví dụ như là class String với phương thức System.out.println mà chúng ta hay dùng chẳng hạn. Các class có sẵn này được đóng gói trong các gói được gọi là package trong Java.

Để sử dụng các class có sẵn này, chúng ta có thể sử dụng tới tên class đủ điều kiện của chúng, hoặc là nạp các package chứa chúng vào trong chương trình để sử dụng, thông qua lệnh import.

Ngoài các class có sẵn trong Java thì chúng ta cũng có thể tự tạo ra các class theo cách mà mình muốn. Các class không có sẵn mà do người dùng tạo ra này được gọi là class Java do người dùng định nghĩa.

Các class như Hello hay MayTinh ở trên được gọi là class Java do người dùng định nghĩa. Đây là các class do chúng ta tự viết trong chương trình.

Với một class Java do người dùng định nghĩa, chúng ta có thể khai báo chúng trực tiếp trong chương trình, hoặc là đóng gói chúng lại trong các Package tự tạo để có thể tái sử dụng các class này trong các chương trình Java khác, với cách sử dụng tương tự như class cài sẵn.

Phương thức (method) trong Java

Phương thức trong Java hay còn gọi là method trong java, là một tập hợp các xử lý nhằm thực hiện một chức năng cụ thể nào đó trong class.

Phương thức trong Java khá giống với khái niệm hàm trong các ngôn ngữ lập trình khác.

Để khai báo phương thức trong Java, chúng ta sử dụng cú pháp sau đây:

class class_name{
  void method_name(){
    // ...
  }
}

Chúng ta đặt phần khai báo một phương thức ở bên trong class chứa nó. Từ khóa void được sử dụng để bắt đầu việc khai báo một phương thức, tiếp đến là tên phương thức method_name, và cuối cùng là các xử lý trong phương thức được viết vào giữa cặp dấu {}.

Một ví dụ cụ thể, chúng ta tạo ra class Robot với các phương thức nói chuyện như sau:

class Robot{
public static void main(String[] args){

//Tạo một rô bốt cụ thể từ class Robot
Robot robot = new Robot();

robot.hello(); //Chạy phương thức chào
robot.bye(); //Chạy phương thức tạm biệt
}

//Khai báo phương thức chào
void hello(){
System.out.println("Hello");
}

//Khai báo phương thức tạm biệt
void bye(){
System.out.println("Bye");
}

Class Robot này ngoài phương thức main mặc định được chạy đầu tiên, thì có 2 phương thức là hello và bye, nhằm miêu tả các hành động chào hỏi của con Rô bốt.

Chúng ta cũng có thể nhóm 2 phương thức này lại thành một phương thức duy nhất như sau:

class Robot{
public static void main(String[] args){
Robot robot = new Robot();
robot.greeting("Hello");
robot.greeting("Bye");
}

void greeting(String msg){
System.out.println(msg);
}
}

Hai phương thức bye và hello có cấu trúc giống nhau và khá đơn giản, nên chúng ta hoàn toàn có thể nhóm chúng lại trong một phương thức duy nhất. Tuy nhiên trong các chương trình với các phương thức xử lý phức tạp, thì việc chia nhỏ các phương thức ra là điều cần thiết.

Trường (field) trong Java

Trường trong Java hay còn gọi là field trong java, là một biến có tác dụng lưu trữ thông tin được xử lý bên trong class.

Bản chất của trường trong Java chính là các biến được khai báo trực tiếp bên trong một class, và chúng ta cũng gọi trường là biến thành viên của class.

Để khai báo trường trong Java, chúng ta sử dụng cú pháp sau đây:

class class_name{
  type field_name;
}

Chúng ta đặt phần khai báo một trường ở bên trong class chứa nó. Một trường được khai báo bắt đầu bởi type: kiểu dữ liệu của trường, rồi đến field_name là tên của trường, và kết thúc bởi dấu chấm phẩy ;.

Trong trường hợp chúng ta muốn gán giá trị ban đầu cùng lúc với việc tạo trường, hãy sử dụng tới cú pháp khởi tạo trường trong Java như sau:

class class_name{
  type field_name = value;
}

Trong đó value chính là giá trị ban đầu mà chúng ta muốn gán vào khi khai báo trường.

Ví dụ cụ thể, chúng ta có thể thêm một trường có tên là currentPosition nhằm lưu giữ vị trí hiện tại của Robot vào class Robot ở trên như sau:

class Robot{
//Khai báo trường thuộc kiểu int, giá trị ban đầu bằng 0
int currentPosition = 0;

public static void main(String[] args){
//Tạo một rô bốt cụ thể từ class Robot
Robot robot = new Robot();

robot.report(); //Báo cáo vị trí hiện tại của rô bốt
robot.moveForward(); //Di chuyển rô bốt về phía trước
robot.report();//Báo cáo vị trí hiện tại của rô bốt sau khi di chuyển
}

//Khai báo phương thức báo cáo vị trí Robot
void report(){
System.out.println("Current Position = " + currentPosition);
}

//Khai báo phương thức di chuyển Robot về phía trước
void moveForward(){
currentPosition = currentPosition + 1;
}
}

Trường currentPosition với giá trị ban đầu bằng 0, sẽ được sử dụng trong tính toán trong các phương thức, cũng như lưu giữ thông tin liên quan tới vị trí hiện tại của Robot trong class.

Giống như trường currentPosition, bằng cách khai báo các trường trong class, bạn có thể lưu trữ dữ liệu cần xử lý trong class chứa trường đó.

Tổng kết

Trên đây Kiyoshi đã hướng dẫn bạn về class, phương thức và trường trong Java rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về Java trong các bài học tiếp theo.

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.