Lớp (class) và cách xây dựng lớp trong Java

Đây là bài 22/62 bài của series môn học Ngôn ngữ lập trình Java

Java là một ngôn ngữ lập trình hướng đối tượng. Cấu trúc của Java đều gồm các đối tượng. Để tạo được các đối tượng thì cần phải có lớp (class). Bài này sẽ giới thiệu về lớp (class) và cách xây dựng lớp trong Java.

1. Lớp (class) là gì?

Lớp (class) là một thiết kế (blueprint), mẫu (prototype) cho các đối tượng cùng kiểu. Lớp có thể coi là khuôn mẫu để tạo các đối tượng. Ví dụ: Người, Xe, Động vật,…

Lớp chính là kết quả của quá trình trừu tượng hóa dữ liệu:

  • Lớp định nghĩa 1 kiểu dữ liệu mới, trừu tượng hóa 1 tập các đối tượng.
  • Một đối tượng gọi là một thể hiện của lớp.

Các thành phần của lớp

Lớp đóng gói các thuộc tính (attribute)phương thức (method) chung của các đối tượng.

Class và object trong Java

Thuộc tính: Một thuộc tính của một lớp là một trạng thái chung được đặt tên của lớp đó. Ví dụ: Lớp Ôtô có các thuộc tính: màu sắc, vận tốc, hãng sản xuất,…

Mỗi đối tượng của lớp có các giá trị của thuộc tính khác nhau. Ví dụ: một chiếc Ôtô bạn đang sử dụng có thể có màu đen, vận tốc 60 km/h.

Phương thức: Xác định các hoạt động chung mà tất cả các đối tượng của lớp thực hiện được. Ví dụ: Lớp Ôtô có các phương thức: tăng tốc độ, giảm tốc độ,…

2. Khai báo lớp (class) trong Java

Lớp sẽ nằm trong một package (gói) nào đó. Sử dụng từ khóa class để khai báo và định nghĩa lớp với cú pháp như sau:

accessmodifier class <Tên Lớp> {
	//các thuộc tính
	//các phương thức
}

accessmodifier gọi là chỉ định truy cập, accessmodifier của lớp (class) có thể là:

  • public: lớp có thể được truy cập từ bất cứ đâu, kể cả bên ngoài package chứa lớp đó.
  • mặc định (default): lớp có thể được truy cập từ bên trong package chứa lớp đó. Khi không ghi rõ accessmodifier cho lớp thì đó là mặc định.
 publicmặc định
Cùng lớp
Cùng gói
Khác gói

Lưu ý: Bên trên đang nói về accessmodifier của lớp (class), accessmodifier của các thuộc tính, phương thức trong lớp (class) có ý nghĩa khác, sẽ tìm hiểu ở phần kế thừa trong Java.

accessmodifier protected và private không được sử dụng cho lớp trong Java. Nếu bạn cố sử dụng các accessmodifier này cho lớp thì chương trình sẽ báo lỗi invalid modifier.

Ví dụ:

Khai báo và định nghĩa lớp với accessmodifier mặc định.

package gochocit.Demo;
class Dog {
    //thuộc tính
    private String ten;
    private String maulong;
    //phương thức
    public void bark(){
        System.out.println("BARRRRK!");
    }
}

Khai báo và định nghĩa lớp với accessmodifier public.

package gochocit.Demo;
public class Dog {
    //thuộc tính
    private String ten;
    private String maulong;
    //phương thức
    public void bark(){
        System.out.println("BARRRRK!");
    }
}

Thuộc tính của lớp

Các thuộc tính phải được khai báo bên trong lớp. Mỗi đối tượng có bản sao các thuộc tính của riêng nó. Giá trị của một thuộc tính thuộc các đối tượng khác nhau là khác nhau.

Bản chất của các thuộc tính là các thành phần dữ liệu của đối tượng. Khai báo tương tự như biến.

Cú pháp khai báo thuộc tính:

accessmodifier kiểudữliệu tênThuộcTính;

Thuộc tính có thể được khởi tạo khi khai báo. Nếu không được khởi tạo thì các giá trị mặc định sẽ được sử dụng.

Ví dụ thuộc tính trong Java

Phương thức của lớp

Phương thức xác định các hoạt động của lớp. Bất kỳ phương thức nào cũng phải thuộc về một lớp nào đó.

Cú pháp khai báo phương thức:

accessmodifier kiểuTrảVề tênPhươngThức (ds tham số) {
	// Nội dung phương thức
}
Ví dụ phương thức trong Java

Lưu ý: accessmodifier của các thuộc tính, phương thức trong lớp (class) có ý nghĩa khác với accessmodifier của lớp (class), sẽ tìm hiểu ở phần kế thừa trong Java.

Sau khi có lớp (class), cần tạo ra các đối tượng của lớp để sử dụng. Chúng ta sẽ tìm hiểu về đối tượng ở bài Đối tượng (object) và cách sử dụng đối tượng trong Java.

5/5 - (1 bình chọn)
Bài trước và bài sau trong môn học<< Kỹ thuật lập trình sao chép mảng (copy array) trong JavaĐối tượng (object) và cách sử dụng đối tượng trong Java >>
Chia sẻ trên mạng xã hội:

Để lại một bình luận

Lưu ý:

1) Vui lòng bình luận bằng tiếng Việt có dấu.

2) Khuyến khích sử dụng tên thật và địa chỉ email chính xác.

3) Mọi bình luận trái quy định sẽ bị xóa bỏ.