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

HOME › >>

Lớp, phương thức và trường trong Java

Khi lập trình bằng Java, lớp là yếu tố cơ bản. Bên trong mỗi lớp có các phương thức, tức là các đoạn mã thực hiện một công việc cụ thể, và các trường để lưu trữ thông tin trong lớp đó. Ở bài viết này chúng ta sẽ giới thiệu một cách đơn giản về lớp, phương thức và trường khi bắt đầu lập trình bằng Java.

Lớp là gì

Đầu tiên, hãy tìm hiểu về lớp. Lớp là một yếu tố cơ bản trong lập trình hướng đối tượng, như trong ngôn ngữ lập trình như Java. Nó là một tập hợp các yếu tố cần thiết để đạt được một mục tiêu cụ thể. Hãy xem một ví dụ đơn giản.

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

Ở đây, chúng ta định nghĩa một lớp có tên là “Hello”. Lớp này chứa những yếu tố cần thiết để hiển thị một thông điệp trên màn hình. Các ứng dụng Java mà bạn sẽ tạo ra sau này sẽ bao gồm một hoặc nhiều lớp như thế này.

Khi định nghĩa một lớp, bạn thực hiện như sau:

class TenLop{
// ...
}

Sau từ khóa “class”, bạn ghi tên của lớp, và sau đó là một khối từ “{“ đến “}” chứa các phương thức thực hiện các công việc cụ thể hoặc các trường lưu trữ dữ liệu được sử dụng trong lớp. Ngược lại, một lớp có thể được xem như là một tập hợp các phương thức và trường được tổ chức lại cho một mục đích cụ thể.

Hãy xem một ví dụ về việc định nghĩa một lớp cung cấp chức năng như một máy tính di động:

class MayTinhDiDong{
public static void main(String[] args){
MayTinhDiDong mayTinh = new MayTinhDiDong();
mayTinh.cong(10,5);
mayTinh.tru(9,2);
}

void cong(int val1, int val2){
System.out.println(val1 + val2);
}

void tru(int val1, int val2){
System.out.println(val1 - val2);
}
}

Trong lớp “MayTinhDiDong” này, chúng ta có các phương thức như “cong” để thực hiện phép cộng và “tru” để thực hiện phép trừ. Các phương thức và trường có thể được thêm vào hoặc sửa đổi để làm cho chương trình trở nên linh hoạt và hữu ích hơn.

Khi chương trình trở nên phức tạp hơn, số lượng lớp được sử dụng trong một ứng dụng cũng sẽ tăng, và số lượng phương thức và trường được định nghĩa trong mỗi lớp cũng sẽ tăng lên.

Phương thức là gì

Tiếp theo là phương thức. Phương thức là một khối mã lệnh được tổ chức để thực hiện một công việc cụ thể trong một lớp.

Khi định nghĩa một phương thức, bạn sẽ thực hiện như sau:

class TenLop{
void tenPhuongThuc(){
// ..
}
}

Phương thức có một kiểu dữ liệu trả về được khai báo ở đầu, sau đó là tên của phương thức. Trong dấu ngoặc đơn “()”, bạn có thể khai báo các tham số giả định nhận giá trị khi phương thức được gọi, nhưng ở đây chúng ta sẽ bỏ qua. Sau đó, khối mã lệnh từ “{“ đến “}” sẽ chứa các câu lệnh được thực hiện khi phương thức được gọi.

Trong ví dụ về lớp máy tính di động trước đó, chúng ta có các phương thức “cong” và “tru”. Bây giờ, hãy xem một ví dụ khác về lớp robot thực hiện các phương thức “hello” và “bye”:

class Robot{
public static void main(String[] args){
Robot robot = new Robot();
robot.hello();
robot.bye();
}

void hello(){
System.out.println("Xin chào");
}

void bye(){
System.out.println("Tạm biệt");
}
}

Trong lớp “Robot” này, có hai phương thức “hello” và “bye”. Mỗi phương thức thực hiện một nhiệm vụ cụ thể. Trong trường hợp này, chúng ta có thể nhận thấy rằng việc tạo một phương thức riêng biệt cho từng chức năng có thể làm cho chương trình trở nên dễ quản lý hơn. Tuy nhiên, nếu chúng ta muốn giữ cho mã nguồn ngắn gọn, có thể kết hợp các chức năng nhỏ thành một phương thức, như sau:

class Robot{
public static void main(String[] args){
Robot robot = new Robot();
robot.greeting("Xin chào");
robot.greeting("Tạm biệt");
}

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

Ở đây, chúng ta sử dụng một phương thức “greeting” để thực hiện cả hai chức năng. Điều này có thể giúp giảm sự phức tạp của mã nguồn trong một số trường hợp.

Cuối cùng, phương thức có thể có kiểu dữ liệu trả về và có thể nhận tham số. Có nhiều cách để tổ chức mã nguồn, và sự lựa chọn giữa việc sử dụng một phương thức lớn hay nhiều phương thức nhỏ phụ thuộc vào cách bạn muốn quản lý mã nguồn của mình.

Trường là gì

Cuối cùng là trường. Trường là nơi để lưu trữ giá trị dữ liệu trong lớp.

Khi định nghĩa một trường, bạn thực hiện như sau:

class TenLop{
kieuDuLieu TenTruong;
}

Đầu tiên, bạn ghi kiểu dữ liệu của giá trị được lưu trữ trong trường, sau đó là tên của trường. Trong ví dụ về lớp robot trước đó, chúng ta đã thêm một trường để theo dõi vị trí hiện tại của robot:

class Robot{
int viTriHienTai = 0;

public static void main(String[] args){
Robot robot = new Robot();
robot.baoCao();
robot.diChuyenToiPhiaTruoc();
robot.baoCao();
}

void baoCao(){
System.out.println("Vi tri hien tai = " + viTriHienTai);
}

void diChuyenToiPhiaTruoc(){
viTriHienTai = viTriHienTai + 1;
}
}

Khi phương thức “diChuyenToiPhiaTruoc” được gọi, robot sẽ di chuyển về phía trước từ vị trí hiện tại của mình. Trường “viTriHienTai” được sử dụng để lưu trữ thông tin về vị trí của robot, và phương thức “baoCao” được sử dụng để hiển thị vị trí hiện tại trên màn hình.

Bằng cách này, chúng ta có thể sử dụng trường để lưu trữ dữ liệu mà chúng ta có thể sử dụng sau này.

Chú ý rằng thông thường, không nên truy cập trực tiếp vào trường từ bên ngoài lớp, mà thay vào đó sử dụng các phương thức công cộng để thao tác với trường. Điều này giúp duy trì tính bao đóng và kiểm soát truy cập đến dữ liệu.

Những kiến thức cơ bản về lớp, phương thức và trường đã được Kiyoshi giải thích ở đây một cách ngắn gọn. Những chi tiết và giải thích chi tiết hơn sẽ được trình bày trong các trang khác. Hiện tại, các bạn hãy nhớ ý nghĩa cơ bản của lớp, phương thức và trường trong lập trình Java là đủ.

Tổng kết

Trên đây Kiyoshi đã giải thích về Lớp (Class), Phương thức (Method), Trường (Field) trong Java.

URL Link

https://laptrinhcanban.com/java/java-co-ban-cho-nguoi-moi-bat-dau/kien-thuc-co-ban-ve-java/class-method-va-field-trong-java/

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

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.