Bài 3. Class Trong Java | Tự học Java Căn Bản
- Published on

- Class trong Java là gì?
- Cấu Trúc Cơ Bản Của Class
- Ví Dụ Đơn Giản Về Class
- Khởi Tạo Đối Tượng (Object) Từ Class
- Các Thành Phần Của Class
- Thuộc Tính (Fields)
- Phương Thức (Methods)
- Constructor
- Phương Thức Getter và Setter
- Giải Thích về Hàm main Trong Java Class
- Các Loại Class Trong Java
- Thao Tác Với Eclipse
- Cách Tạo Class Java Trong Dự Án với Eclipse IDE
- Tạo nhanh hàm main trong một Class
- Chạy Chương Trình Trong Eclipse
- Kết Luận
Class trong Java là gì?
Class (lớp) trong Java là một mẫu thiết kế (blueprint) hoặc khuôn mẫu để tạo ra các đối tượng (objects). Nó định nghĩa các thuộc tính (biến) và hành vi (phương thức) mà các đối tượng thuộc lớp đó sẽ có. Trong lập trình hướng đối tượng (OOP), class là thành phần cốt lõi giúp tổ chức và quản lý mã nguồn.
Cấu Trúc Cơ Bản Của Class
Một class trong Java có cấu trúc cơ bản như sau:
class ClassName {
// Các thuộc tính của class
dataType fieldName;
// Các phương thức của class
returnType methodName() {
// Thực thi phương thức
}
}
- ClassName: Tên của class (theo quy tắc CamelCase).
- Field: Các thuộc tính hoặc biến của class.
- Method: Các phương thức của class (hoặc hành vi của đối tượng).
Ví Dụ Đơn Giản Về Class
Dưới đây là một ví dụ đơn giản về một class trong Java:
class Person {
// Các thuộc tính của class
String name;
int age;
// Phương thức của class
void introduce() {
System.out.println("Hi, my name is " + name + " and I am " + age + " years old.");
}
}
Trong ví dụ trên:
- Person là tên class.
- name và age là các thuộc tính của class.
- introduce() là một phương thức in ra thông tin giới thiệu về đối tượng.
Khởi Tạo Đối Tượng (Object) Từ Class
Một khi bạn đã định nghĩa một class, bạn có thể tạo ra các đối tượng từ class đó. Đây là quá trình khởi tạo đối tượng. Để khởi tạo một đối tượng, bạn sử dụng từ khóa new.
Ví dụ:
public class Main {
public static void main(String[] args) {
// Khởi tạo đối tượng của class Person
Person person1 = new Person();
person1.name = "Alice";
person1.age = 25;
// Gọi phương thức của đối tượng person1
person1.introduce();
}
}
Kết quả sẽ là:
Hi, my name is Alice and I am 25 years old.
Các Thành Phần Của Class
Thuộc Tính (Fields)
Thuộc tính của một class là các biến đại diện cho dữ liệu của đối tượng. Ví dụ trong class Person, name và age là các thuộc tính.
Phương Thức (Methods)
Phương thức trong class là các hành động mà đối tượng có thể thực hiện. Một phương thức có thể thay đổi giá trị của các thuộc tính, thực thi các phép toán, hoặc in kết quả ra màn hình.
Constructor
Constructor là một phương thức đặc biệt trong lớp (class) được sử dụng để khởi tạo các đối tượng của lớp. Constructor có những đặc điểm chính sau:
-
Cùng tên với class: Constructor luôn có tên giống hệt với tên của class mà nó thuộc về. Điều này giúp JVM nhận diện và gọi constructor khi khởi tạo đối tượng.
-
Không có kiểu trả về: Điều này có nghĩa là constructor không trả về bất kỳ giá trị nào, kể cả
void
. Mặc dù phương thức trong Java thường phải có kiểu trả về, constructor lại không cần như vậy. -
Khởi tạo đối tượng: Constructor thường được dùng để khởi tạo các giá trị ban đầu cho đối tượng của lớp. Khi một đối tượng được tạo ra, constructor sẽ tự động được gọi để thiết lập trạng thái ban đầu của đối tượng.
-
Có thể có nhiều constructor: Lớp có thể có nhiều constructor với các tham số khác nhau. Điều này gọi là constructor overloading (nạp chồng constructor). Các constructor này có thể khởi tạo đối tượng với các giá trị khác nhau tùy vào yêu cầu của chương trình.
Ví dụ:
class Person {
String name;
int age;
// Constructor
Person(String name, int age) {
this.name = name;
this.age = age;
}
void introduce() {
System.out.println("Hi, my name is " + name + " and I am " + age + " years old.");
}
}
Trong ví dụ này, Person(String name, int age) là một constructor, giúp khởi tạo đối tượng Person với các giá trị name và age.
Khi tạo đối tượng Person, bạn có thể gọi constructor như sau:
public class Main {
public static void main(String[] args) {
Person person1 = new Person("Alice", 25);
person1.introduce();
}
}
Kết quả:
Hi, my name is Alice and I am 25 years old.
Phương Thức Getter và Setter
Phương thức getter và setter là các phương thức dùng để truy xuất và thay đổi giá trị của các thuộc tính trong class.
Ví dụ:
class Person {
private String name;
private int age;
// Getter và Setter cho name
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
// Getter và Setter cho age
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
Với getter và setter, bạn có thể kiểm soát việc truy cập và thay đổi các thuộc tính của class từ bên ngoài.
public class Main {
public static void main(String[] args) {
Person person1 = new Person();
person1.setName("Alice");
person1.setAge(25);
System.out.println(person1.getName());
System.out.println(person1.getAge());
}
}
Kết quả:
Alice
25
Giải Thích về Hàm main Trong Java Class
Hàm main trong Java là điểm bắt đầu của chương trình. Mỗi khi bạn chạy một chương trình Java, Java Virtual Machine (JVM) sẽ tìm và thực thi hàm main từ lớp mà bạn chỉ định. Cấu trúc cơ bản của hàm main là:
public class Hello {
public static void main(String[] args) {
System.out.println("Hello");
}
}
Trong ví dụ trên, hàm main nhận một tham số là String[] args, đây là một mảng chuỗi dùng để nhận các đối số từ dòng lệnh khi chương trình được thực thi. Tham số này cho phép bạn truyền dữ liệu vào chương trình khi chạy từ terminal hoặc command line.
Một điểm quan trọng là hàm main phải được khai báo là static. Điều này là vì hàm main được gọi mà không cần phải tạo đối tượng của lớp. Khi một chương trình Java được chạy, JVM sẽ không tạo đối tượng của lớp mà chỉ đơn giản là gọi hàm main. Nếu không khai báo là static, bạn sẽ cần phải tạo đối tượng của lớp trước khi có thể gọi hàm main, điều này làm phức tạp quá trình khởi chạy và không phù hợp với vai trò "điểm bắt đầu" của chương trình.
Trong các chương trình phức tạp, hàm main thường không chứa quá nhiều logic mà chỉ thực hiện các bước khởi tạo cần thiết. Ví dụ, trong một ứng dụng lớn, hàm main có thể được dùng để:
- Tạo các đối tượng cần thiết (như các lớp xử lý chính của chương trình).
- Thiết lập các tài nguyên cần thiết (như kết nối cơ sở dữ liệu).
- Chuyển quyền điều khiển cho các lớp hoặc đối tượng khác để tiếp tục thực hiện các tác vụ cụ thể.
Ví dụ dưới đây cho thấy một hàm main trong chương trình phức tạp hơn, nơi nó chỉ khởi động ứng dụng và chuyển quyền điều khiển cho một lớp khác:
public class Application {
public static void main(String[] args) {
System.out.println("Khởi động chương trình");
MyApp app = new MyApp();
app.run();
}
}
Ở đây, hàm main chỉ khởi động chương trình và tạo đối tượng MyApp, sau đó gọi phương thức run của lớp MyApp để tiếp tục xử lý các công việc cụ thể của ứng dụng.
Một chương trình Java có thể có nhiều lớp, nhưng chỉ cần một hàm main để chạy. Nếu không có hàm main, JVM sẽ báo lỗi.
Các Loại Class Trong Java
Java hỗ trợ nhiều loại class khác nhau, bao gồm:
- Class thông thường (Normal Class): Đây là loại class phổ biến nhất mà bạn đã thấy trong các ví dụ trước.
- Class trừu tượng (Abstract Class): Là class không thể khởi tạo trực tiếp mà phải được kế thừa. Class này có thể chứa các phương thức trừu tượng mà các lớp con cần phải cài đặt.
- Class giao diện (Interface): Giao diện trong Java giống như một contract mà các lớp phải tuân theo. Các phương thức trong giao diện không có thân (body), và các lớp phải cung cấp phần thân cho các phương thức đó.
Thao Tác Với Eclipse
Cách Tạo Class Java Trong Dự Án với Eclipse IDE
-
Tạo Dự Án Java Mới:
- Mở Eclipse.
- Chọn File > New > Java Project.
- Trong cửa sổ hiện lên, nhập tên dự án (ví dụ:
MyFirstJavaProject
), sau đó nhấn Finish.
-
Tạo Class Mới trong Dự Án:
- Sau khi tạo dự án, trong Project Explorer ở phía bên trái, tìm đến dự án bạn vừa tạo.
- Click chuột phải vào thư mục src (nếu chưa có thư mục này, bạn cần tạo một thư mục
src
). - Chọn New > Class.
- Cửa sổ New Java Class sẽ hiện lên.

- Điền Thông Tin Class:
- Trong cửa sổ New Java Class, bạn cần nhập:
- Tên Class: Ví dụ:
HelloWorld
. - Chọn public static void main(String[] args) nếu bạn muốn tự động tạo hàm
main
(dành cho các chương trình Java đơn giản). - Chọn Package (tuỳ chọn) nếu bạn muốn Class này nằm trong một package cụ thể (ví dụ:
com.myapp
).
- Tên Class: Ví dụ:
- Trong cửa sổ New Java Class, bạn cần nhập:
- Hoàn Tất Tạo Class:
- Sau khi điền thông tin, nhấn Finish. Class mới sẽ được tạo trong thư mục
src
của dự án và mở ngay trong cửa sổ làm việc của Eclipse.
- Sau khi điền thông tin, nhấn Finish. Class mới sẽ được tạo trong thư mục
main
trong một Class
Tạo nhanh hàm Khi bạn tạo một lớp mới trong Eclipse, bạn có thể muốn nhanh chóng thêm một hàm main
để bắt đầu chương trình. Thay vì gõ toàn bộ cú pháp của hàm main
, bạn có thể sử dụng một cách nhanh chóng như sau:
- Trong class của bạn, gõ từ khóa
main
. - Sau đó, nhấn tổ hợp phím
Ctrl + Space
, Eclipse sẽ hiển thị các gợi ý. - Chọn gợi ý đầu tiên hoặc nhấn
Enter
để tự động hoàn thiện hàmmain
.
Ví dụ:
Khi bạn gõ từ khóa main
và nhấn Ctrl + Space + Enter
, Eclipse sẽ tạo ra đoạn mã sau:
public static void main(String[] args) {
// TODO Auto-generated method stub
}
Chạy Chương Trình Trong Eclipse
Để chạy chương trình trong Eclipse, bạn có thể làm theo 1 trong 3 cách sau:
-
Cách 1: Chạy chương trình từ cửa sổ code: Mở file Java mà bạn muốn chạy. Sau đó click chuột phải vào bất kỳ đâu trong cửa sổ của chương trình và chọn Run As > Java Application.
-
Cách 2: Chạy chương trình từ thanh công cụ: Sau khi mở chương trình, bạn có thể click vào nút Run (màu xanh lá cây với biểu tượng hình tam giác) ở góc trên bên phải của cửa sổ Eclipse để chạy chương trình.
-
Cách 3: Chạy chương trình từ thanh menu: Bạn có thể chọn Run > Run từ thanh menu trên cùng.
Kết Luận
Class trong Java là một công cụ mạnh mẽ và quan trọng để tổ chức mã nguồn, giúp bạn dễ dàng tạo ra các đối tượng và tương tác với chúng. Hiểu rõ về class và các thành phần của nó là bước đầu tiên để bạn có thể xây dựng các chương trình Java hiệu quả và dễ bảo trì.
Khi bạn tiếp tục học lập trình Java, việc làm quen với các khái niệm như kế thừa, đa hình và trừu tượng hóa sẽ giúp bạn sử dụng class một cách thành thạo và phát triển các ứng dụng phức tạp hơn.
Bài tiếp theo: Bài 4. Cách khai báo biến trong Java
Bài viết mới nhất
Bài 26. Cách Sử Dụng break, continue và return Trong Java | Tự Học Java Căn Bản
Hướng dẫn cách sử dụng câu lệnh break, continue và return trong Java để kiểm soát vòng lặp và luồng thực thi chương trình hiệu quả.
Bài 25. Vòng Lặp do-while Trong Java | Tự Học Java Căn Bản
Hướng dẫn chi tiết về vòng lặp do-while trong Java, cách sử dụng, cú pháp, ví dụ minh họa và so sánh với vòng lặp while.
Bài 24. Cách Chuyển Đổi Số Từ Thập Phân Sang Nhị Phân Trong Java | Tự Học Java Căn Bản
Hướng dẫn cách chuyển đổi số từ hệ thập phân sang hệ nhị phân trong Java bằng nhiều phương pháp khác nhau, kèm theo ví dụ minh họa.
Bài 23. Cách Sử Dụng Vòng Lặp While Trong Java | Tự Học Java Căn Bản
Tìm hiểu cách sử dụng vòng lặp while trong Java với cú pháp, ví dụ thực tế và ứng dụng trong lập trình Java.
Bài viết liên quan
Bài 26. Cách Sử Dụng break, continue và return Trong Java | Tự Học Java Căn Bản
Hướng dẫn cách sử dụng câu lệnh break, continue và return trong Java để kiểm soát vòng lặp và luồng thực thi chương trình hiệu quả.
Bài 25. Vòng Lặp do-while Trong Java | Tự Học Java Căn Bản
Hướng dẫn chi tiết về vòng lặp do-while trong Java, cách sử dụng, cú pháp, ví dụ minh họa và so sánh với vòng lặp while.
Bài 24. Cách Chuyển Đổi Số Từ Thập Phân Sang Nhị Phân Trong Java | Tự Học Java Căn Bản
Hướng dẫn cách chuyển đổi số từ hệ thập phân sang hệ nhị phân trong Java bằng nhiều phương pháp khác nhau, kèm theo ví dụ minh họa.
Bài 23. Cách Sử Dụng Vòng Lặp While Trong Java | Tự Học Java Căn Bản
Tìm hiểu cách sử dụng vòng lặp while trong Java với cú pháp, ví dụ thực tế và ứng dụng trong lập trình Java.
