Lớp và đối tượng trong Java là hai khái niệm cơ bản và quan trọng trong lập trình bởi các lập trình viên có thể dễ dàng thao tác với dữ liệu. Trong bài viết này, ta sẽ cùng tìm hiểu về các khái niệm này trong Java cùng với các ví dụ dẫn chứng.
Lớp và đối tượng
Java là một ngôn ngữ lập trình hướng đối tượng. Khái niệm cốt lõi của phương pháp hướng đối tượng là chia các vấn đề phức tạp thành các phần nhỏ hơn. Đối tượng là bất kỳ thực thể nào bao gồm trạng thái và hành vi. Ví dụ, một chiếc xe đạp là một đối tượng. Nó bao gồm có:
- Các thuộc tính: tay lái, bánh răng.
- Các hành động: phanh, tăng tốc độ.
Trước khi tìm hiểu về các đối tượng, trước tiên chúng ta sẽ tìm hiểu về khái niệm lớp trong Java.
Lớp
Một lớp giống như một bản thiết kế cho đối tượng. Trước khi tạo một đối tượng, ban đầu, chúng ta cần định nghĩa cho lớp. Chúng ta có thể coi lớp như một bản phác thảo của một ngôi nhà. Nó chứa tất cả các chi tiết bao gồm sàn nhà, cửa ra vào, cửa sổ. Dựa trên những mô tả này, chúng ta có thể xây dựng một ngôi nhà. Và ngôi nhà chính là một đối tượng. Vì nhiều ngôi nhà có thể được tạo từ cùng một bản phác thảo, do vậy có thể có nhiều đối tượng từ một lớp được tạo.
Tạo một lớp trong Java
Chúng ta có thể tạo một lớp trong Java bằng cách sử dụng từ khóa class.
Ví dụ:
1 2 3 |
class tên_lớp { dữ liệu thành viên } |
Ở đây, các biến và phương thức thành viên sẽ lần lượt thể hiện trạng thái và hành vi của đối tượng. Trong đó, các biến sẽ lưu trữ thông tin dữ liệu và phương thức được sử dụng để thực hiện các thao tác.
Ví dụ:
1 2 3 4 5 6 |
class sinh_vien { private int ID_sv = 2; public void int_thong_tin() { System.out.println(ID_sv); } } |
Trong ví dụ trên, chúng ta đã tạo một lớp có tên sinh_vien. Nó chứa một biến có tên là ID_sv và một phương thức có tên là in_thong_tin(). Lớp Sinh_vien là một bản phác thảo. Và ta có thể tạo ra bất kỳ đối tượng sinh viên nào bằng cách sử dụng lớp đã được khai báo này.
Đối tượng
Một đối tượng được gọi là một thể hiện của một lớp. Ví dụ, giả sử sinh viên là một lớp thì các đối tượng sinh viên 1, sinh viên 2 sẽ là các biểu hiện của lớp sinh viên
Tạo một đối tượng trong Java
Ví dụ:
1 2 |
Tên_lớp tên_đối_tượng = new tên_lớp(); Sinh_vien sv = new Sinh_vien(); |
Chúng ta đã sử dụng từ khóa new cùng với hàm tạo của lớp để tạo một đối tượng. Các hàm tạo giống với các phương thức thông thường, nhưng nó được khai báo là cùng tên với lớp.
Ví dụ, phương thức sinh_vien() sẽ là hàm tạo của lớp sinh_vien.
Ở đây, sv là tên của đối tượng. Chúng ta có thể sử dụng tên này để truy cập các trường và phương thức của lớp sinh_vien.
Chú ý: Các trường và phương thức của một lớp được gọi là thành viên của lớp đó.
Truy cập vào dữ liệu thành viên của một lớp
Chúng ta có thể sử dụng tên của các đối tượng cùng với dấu chấm để truy cập vào các thành viên của một lớp.
Ví dụ:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
class sinh_vien { private int ID_sv = 2; public void in_thong_tin() { System.out.println(ID_sv); } } class Main{ public static void main(String[] args) { sinh_vien sv = new sinh_vien(); sv.in_thong_tin(); } } |
Kết quả:
1 |
2 |
Trong đoạn mã trên, ta đã khai báo một lớp sinh_vien bao gồm biến thành viên là ID_sv kiểu dữ liệu int và một phương thức in_thong_tin() để in ra dữ liệu ID_sv. Ta đã tạo một đối tượng sv bằng phương thức new, sau đó, ta truy cập vào phương thức in_thong_tin() của lớp sinh_vien bằng cách sử dụng tên đối tượng và dấu chấm (.) với tên phương thức.
Ví dụ: Tạo một đối tượng bên trong một lớp.
1 2 3 4 5 6 7 8 9 10 |
class sinh_vien { private int ID_sv = 2; public void int_thong_tin() { System.out.println(ID_sv); } public static void main(String[] args) { sinh_vien sv = new sinh_vien(); sv.int_thong_tin(); } } |
Kết quả:
1 |
2 |
Trong ví dụ trước, ta đã khai báo một đối tượng của lớp sinh_vien trong lớp Main. Lần này, ta đã tạo một phương thức main bên trong lớp sinh_vien và khai báo một đối tượng của lớp sinh_vien trong chính lớp này.
Trên đây là khái niệm và ví dụ cơ bản về lớp và đối tượng trong Java. Hy vọng mọi người có thể áp dụng vào trong chương trình của mình. Mọi người hãy tiếp tục theo dõi các bài tiếp theo và cập nhật các bài mới nhất trên tek4 nhé!
P/s: Cảm ơn mọi người!