Skip to content
  • Bảng vàng Mankai
  • Tin tức
  • Liên hệ
  • VI
  • JP
Mankai AcademyMankai Academy
  • Giới thiệu
    • Về Mankai
    • Đội ngũ
  • JLPT
  • Kaiwa
  • Sơ cấp
  • Tokutei
  • IT Talk
  • Đào tạo doanh nghiệp
Trang chủ / Kiến thức chuyên môn / 5 Phút Tìm Hiểu Về Abstract Class Trong Java
  • Dành cho người mới bắt đầu
  • Dành cho người đã có nền tảng
  • Dành cho người muốn đi Nhật
  • Nhận kho tài liệu miễn phí
Test tư duy lập trình miễn phí

Đăng ký nhận tin tức từ Rikkei Academy

    28/05/2023

    5 Phút Tìm Hiểu Về Abstract Class Trong Java

    Phí Thanh 04 phút đọc
    Abstract Class Trong Java Rikkei Academy

    Mục lục

    Toggle
    • Abstraction là gì trong Java?
    • Abstract class trong Java là gì?
      • Mục đích sử dụng của Abstract Class trong Java
      • Lưu ý về lớp abstract trong Java
    • Các thao tác cơ bản với Abstract Class trong Java
      • Khai báo Abstract Class trong Java
      • Khai báo một phương thức trừu tượng
      • Ghi đè phương thức trừu tượng
      • Kế thừa từ một lớp trừu tượng
    • Kết luận

    Nếu đã tìm hiểu khái niệm Class thì Abstract Class chắc hẳn không còn xa lạ với bạn, vậy bạn đã biết gì về Abstract Class trong Java? Nếu chưa, hãy cùng Rikkei Academy tìm hiểu về qua bài viết này nhé!

    Abstraction là gì trong Java?

    Tính trừu tượng (Abstraction) trong Java là khả năng mô tả và tập trung vào các đặc tính quan trọng của một đối tượng, bỏ qua các chi tiết không quan trọng, và tạo ra các lớp, phương thức và thuộc tính trừu tượng để thể hiện các tính năng của đối tượng đó. Tính trừu tượng trong Java được thực hiện thông qua các cơ chế:

    • Lớp trừu tượng (abstract class)
    • Giao diện (Interface)

    Abstract class trong Java là gì?

    Abstract class là một lớp trừu tượng mà không thể được khởi tạo trực tiếp. Nó được sử dụng để định nghĩa các phương thức trừu tượng mà các lớp con cần triển khai

    Nó chứa ít nhất một phương thức trừu tượng, tức là phương thức không có phần thân hàm, và được khai báo bằng từ khóa “abstract”. Các lớp con của lớp trừu tượng phải triển khai tất cả các phương thức trừu tượng của lớp cha trừu tượng để có thể được khởi tạo.

    Mục đích sử dụng của Abstract Class trong Java

    Abstract Class trong Java được sử dụng vì các mục đích sau:

    • Lớp trừu tượng trong Java cung cấp một mẫu (template) để triển khai quá trình trừu tượng dữ liệu bằng cách giấu đi chi tiết cài đặt. Nó cũng cung cấp cho người sử dụng cuối một mẫu mô tả các phương thức có sẵn.
    • Trừu tượng hóa dữ liệu trong Java giúp giảm sự phụ thuộc (Loose Coupling) giữa các thành phần của chương trình, giúp tăng tính linh hoạt và dễ bảo trì.
    • Sử dụng lớp trừu tượng cho phép tái sử dụng mã (Code Reusability) giúp tiết kiệm thời gian. Các phương thức trừu tượng có thể được triển khai lại trong các lớp con.
    • Bằng cách sử dụng hỗ trợ của quá trình giải quyết phương thức động (Dynamic Resolution), lập trình viên có thể giải quyết nhiều vấn đề với sự trợ giúp của một phương thức trừu tượng.
    Đặc điểm của Abstract Class trong Java
    Đặc điểm của Abstract Class trong Java

    Lưu ý về lớp abstract trong Java

    • Nó không thể được khởi tạo.
    • Nó có thể có các phương thức trừu tượng và phương thức không trừu tượng.
    • Nó có thể có các phương thức khởi tạo (constructor) và phương thức tĩnh (static method).
    • Nó có thể có các phương thức cuối cùng (final) được dùng để buộc lớp con không được thay đổi nội dung của phương thức.

    Các thao tác cơ bản với Abstract Class trong Java

    Dưới đây là một số thao tác với Abstract Class trong Java cơ bản mà bạn cần nắm rõ:

    Khai báo Abstract Class trong Java

    Để khai báo một lớp trừu tượng trong Java, ta sử dụng từ khóa “abstract” và đặt nó trước tên lớp. Cú pháp chính xác để khai báo một lớp trừu tượng như sau:

    <Access_Modifier> abstract class <Class_Name> {

    //Data_Members;

    //Statements;

    //Methods;

    }

    Trong đó:

    • Access_Modifier: từ khóa chỉ định quyền truy cập của lớp trừu tượng.
    • Abstract class: từ khóa định nghĩa một lớp trừu tượng.
    • Class_Name: tên lớp trừu tượng.
    • Data_Members: các biến thành viên (member variables) của lớp trừu tượng
    • Statements: các câu lệnh, chú thích hoặc bất kỳ nội dung nào khác bạn muốn đặt trong lớp trừu tượng.
    • Method: phương thức của lớp trừu tượng có thể là phương thức trừu tượng (abstract method), phương thức không trừu tượng (non-abstract method) hoặc cả hai.

    Ví dụ:

    public abstract class Animal {

    public abstract void makeSound();

    }

    Trong ví dụ này, chúng ta khai báo một lớp trừu tượng Animal, có một abstract method là makeSound().

    Khai báo một phương thức trừu tượng

    Phương thức trừu tượng: Là một phương thức được khai báo là trừu tượng và không có thân hàm. Các abstract method (phương thức trừu tượng) cho phép định nghĩa các hành động hoặc tính năng của đối tượng mà không cần cung cấp các chi tiết cụ thể về cách thực hiện hành động (mã lệnh) đó. Các lớp con sẽ phải triển khai các abstract methods này để cung cấp các chi tiết cụ thể về cách thực hiện các hành động đó.

    Để khai báo một phương thức trừu tượng, chúng ta sử dụng từ khóa “abstract” trước khai báo phương thức và không có thân hàm (body) cho phương thức đó.

    Cú pháp:

    abstract <modifier> <return_type> <method_name>(<parameter_list>);

    Trong đó:

    • abstract: từ khóa để khai báo phương thức trừu tượng.
    • modifier: các từ khóa truy cập.
    • return_type: kiểu dữ liệu của giá trị trả về của phương thức hoặc từ khóa void nếu phương thức không trả về giá trị nào.
    • method_name: tên phương thức.
    • parameter_list: danh sách các tham số của phương thức, được phân tách bằng dấu phẩy (,).

    Ví dụ:

    public abstract void makeSound();

    Ghi đè phương thức trừu tượng

    Lớp con phải triển khai lại tất cả các phương thức trừu tượng của lớp cha hoặc định nghĩa lại lớp con là một lớp trừu tượng. Việc ghi đè phương thức trừu tượng cho phép các lớp con tuỳ chỉnh triển khai của phương thức trừu tượng theo nhu cầu của chúng.

    Khi lớp con triển khai lại một phương thức trừu tượng, chúng ta sử dụng từ khóa “override” để đánh dấu phương thức đó là phương thức được ghi đè. Cú pháp:

    @Override

    <modifier> <return_type> <method_name>(<parameter_list>) {

        // code implementation

    }

    Ví dụ:

      @Override

    public void makeSound() {

    System.out.println(“Bark!”);

    }

    }

    Kế thừa từ một lớp trừu tượng

    Do lớp trừu tượng không thể tạo ra đối tượng hoặc triển khai trực tiếp từ lớp đó. Do đó, để truy cập các phương thức bên trong các lớp trừu tượng, chúng ta phải thực hiện kế thừa từ lớp trừu tượng đó bằng cách sử dụng từ khóa “extends” trong khai báo lớp con. Lớp con phải triển khai tất cả các phương thức trừu tượng có trong lớp cha trừ khi lớp con cũng là một lớp trừu tượng.

    Cú pháp:

    abstract class TenLopCha {

    // các phương thức trừu tượng

    }

    class TenLopCon extends TenLopCha {

    // định nghĩa các phương thức trừu tượng và/hoặc phương thức khác

    }

    Ví dụ:

    public class Dog extends Animal {

    // code here

    }

    Kết luận

    Bài viết này đã cung cấp các thông tin chi tiết về Abstract class trong Java từ khái niệm, đặc điểm đến một số thao tác làm việc cơ bản. Hy vọng những thông tin này sẽ giúp ích cho bạn trong quá trình tìm hiểu về ngôn ngữ lập trình Java.

    Nếu bạn đang muốn tìm kiếm khóa học lập trình Java cho người mới bắt đầu, tham khảo Rikkei Academy nhé! Lộ trình tinh gọn với kiến thức, kỹ năng bám sát thực tế giúp bạn nắm vững nền tảng để trở thành lập trình viên tiêu chuẩn chỉ sau 6 tháng! Đăng ký để nhận tư vấn và buổi học trải nghiệm cùng giảng viên Rikkei Academy!

    Tài liệu tham khảo:

    https://www.simplilearn.com/tutorials/java-tutorial/abstract-class-in-java

    https://www.javatpoint.com/abstract-class-in-java

    https://www.geeksforgeeks.org/difference-between-abstract-class-and-interface-in-java/

    Bài viết cùng chủ đề

    • Constructor Trong Java Rikkei Academy 16/06/202304 phút đọc Constructor Trong Java: Tìm Hiểu Tất Tần Tật Về Hàm Khởi Tạo
    • Nghề lập trình là gì? làm lập trình viên là làm gì? 31/05/202204 phút đọc NGHỀ “LẬP TRÌNH” LÀ GÌ? LÀM “LẬP TRÌNH VIÊN” LÀ LÀM GÌ?
    • Cau Hoi Phong Van Tester Rikkei Academy 24/06/202304 phút đọc Trọn Bộ Câu Hỏi Phỏng Vấn Tester Mới Nhất 2023
    • Java khác gì JavaScript 19/05/202304 phút đọc Java và JavaScript: Những điểm khác biệt cơ bản
    • Front end và back end là gì? 20/12/202204 phút đọc Front end và Back end là gì? Full Stack là gì?
    • Top 5 lưu ý quan trọng khi học lập trình cơ bản 26/09/202204 phút đọc 5 lưu ý quan trọng khi học lập trình cơ bản

    Khởi động hành trình của bạn

    Hãy bước vào hành trình mới để khám phá tiềm năng và chinh phục những mục tiêu của bạn ngay hôm nay.

    Liên hệ Nhận tư vấn

    HỌC VIỆN ĐÀO TẠO VÀ PHÁT TRIỂN TIẾNG NHẬT THỰC CHIẾN

    HỌC VIỆN ĐÀO TẠO VÀ PHÁT TRIỂN TIẾNG NHẬT THỰC CHIẾN

    THÔNG TIN LIÊN HỆ

    Địa chỉ: Tòa nhà Sông Đà, Đường Phạm Hùng, Mỹ Đình, Nam Từ Liêm, Hà Nội

    Hotline: 0835 662 538

    Email: support@mankai.edu.vn

    LIÊN KẾT NHANH

    Giới thiệu
    JLPT
    Kaiwa
    Sơ cấp
    IT Talk
    Tokutei
    Đào tạo Doanh ngiệp
    Bảng vàng Mankai
    Tin tức
    Liên hệ

    THEO DÕI CHÚNG TÔI TẠI

    Copyright 2024 © Mankai Academy All rights reserved.
    • Về chúng tôi
    • Khác
    • Bảng vàng Mankai
    • Tin tức
    • Liên hệ
    • Giới thiệu
      • Về Mankai
      • Đội ngũ
    • JLPT
    • Kaiwa
    • Sơ cấp
    • Tokutei
    • IT Talk
    • Đào tạo doanh nghiệp