Tính trừu tượng (Abstraction) trong Java

Tính trừu tượng (Abstraction) trong Java

Tính trừu tượng (Abstraction) trong Java

C hào mừng bạn đến với khoá học lập trình java , hôm nay mình sẽ giới thiệu cho các bạn một trong những tính chất của lập trình hướng đối tư...
Comment tháng 6 05, 2021

Chào mừng bạn đến với khoá học lập trình java, hôm nay mình sẽ giới thiệu cho các bạn một trong những tính chất của lập trình hướng đối tượng OPP đó là Tình trừu tượng (Abstraction) trong java

1. Khái niệm tính trừu tượng

Trừu tượng là khái niệm của lập trình hướng đối tượng chỉ "hiển thị" các thuộc tính thiết yếu và "ẩn" thông tin không cần thiết. Mục đích chính của trừu tượng là che giấu những chi tiết không cần thiết khỏi người dùng. Tính trừu tượng là chọn dữ liệu từ một nhóm lớn hơn để chỉ hiển thị các chi tiết có liên quan của đối tượng cho người dùng. Nó giúp giảm độ phức tạp và nỗ lực lập trình. Đây là một trong những khái niệm quan trọng nhất của OOP.


Trừu tượng trong java trong thực tế còn có thể hiểu là cái gì đó không có thực. Vậy tính Trừu tượng trong OOP ý muốn nói đến một lớp nào đó mang một đặc tính trừu tượng, không có thực. Và như vậy bạn có thể hiểu là lớp Trừu tượng sẽ là lớp không tồn tại đúng không nào?

Tính trừu tượng (Abstraction) trong Java

2. Ưu điểm tính trừu tượng

  •  Tính trừu tượng cho phép các lập trình viên loại bỏ tính chất phức tạp của đối tượng bằng cách chỉ đưa ra các thuộc tính và phương thức cần thiết của đối tượng trong lập trình, cải thiện khả năng bảo trì của hệ thống.
  •  Tính trừu tượng giúp chúng ta tập trung vào những cốt lõi cần thiết của đối tượng thay vì quan tâm đến cách nó thực hiện.
  •  Tính trừu tượng cung cấp nhiều tính năng mở rộng khi sử dụng kết hợp với tính đa hình và kế thừa trong lập trình hướng đối tượng.
  • Lợi ích chính của việc sử dụng một Trừu tượng trong Lập trình là nó cho phép bạn nhóm một số lớp có liên quan với nhau thành anh chị em.
    • Tính trừu tượng trong lập trình hướng đối tượng giúp giảm bớt sự phức tạp của quá trình thiết kế và triển khai phần mềm.

3. Hãy nghiên cứu sự trừu tượng trong OOP:

Giả sử bạn muốn tạo một ứng dụng ngân hàng và bạn được yêu cầu thu thập tất cả thông tin về khách hàng của mình. Có khả năng bạn sẽ đưa ra thông tin sau về khách hàng

 Full name
 Address
 Contact Number
 Tax Information

4. Sự khác biệt giữa trừu tượng và đóng gói

 Abstraction

  •  Tính trừu tượng trong Lập trình hướng đối tượng giải quyết các vấn đề ở cấp độ thiết kế.
  •  Tính trừu tượng trong Lập trình là về việc che giấu các chi tiết không mong muốn trong khi hiển thị hầu hết các thông tin cần thiết.
  •  Tính trừu tượng hóa dữ liệu trong Java cho phép tập trung vào những gì đối tượng thông tin phải chứa

Encapsulation

  • Việc đóng gói giải quyết nó ở mức độ thực thi.
  • Đóng gói có nghĩa là liên kết mã và dữ liệu thành một đơn vị duy nhất.
  • Đóng gói có nghĩa là ẩn các chi tiết hoặc cơ chế bên trong về cách một đối tượng thực hiện điều gì đó vì lý do bảo mật.

5. Sự khác biệt giữa Lớp trừu tượng và Giao diện

Abstract Class

  • Một lớp trừu tượng có thể có cả phương thức trừu tượng và không trừu tượng.
  • Nó không hỗ trợ nhiều thừa kế.
  • Nó có thể cung cấp việc triển khai giao diện.
  • Một lớp trừu tượng có thể có các phương thức chung được bảo vệ và trừu tượng.
  • Một lớp trừu tượng có thể có biến cuối cùng, tĩnh hoặc biến cuối cùng tĩnh với bất kỳ mã xác định quyền truy cập nào.

Interface

  • Giao diện có thể chỉ có các phương thức trừu tượng.
  • Nó hỗ trợ nhiều thừa kế.
  • Nó không thể cung cấp việc triển khai lớp trừu tượng.
  • Một giao diện chỉ có thể có các phương thức trừu tượng công khai.
  • Giao diện chỉ có thể có một biến cuối cùng tĩnh công khai.

6. Phương pháp trừu tượng là gì (Abstract Methods)?

Phương thức trừu tượng là một phương thức chỉ có định nghĩa phương thức nhưng không chứa thực thi. Phương thức không có phần thân được gọi là Phương thức trừu tượng. Nó phải được khai báo trong một lớp trừu tượng. Phương thức trừu tượng sẽ không bao giờ là cuối cùng vì lớp trừu tượng phải triển khai tất cả các phương thức trừu tượng.

7. Khi nào sử dụng các phương thức trừu tượng và lớp trừu tượng?

Các phương thức trừu tượng chủ yếu được khai báo trong đó hai hoặc nhiều lớp con cũng đang làm điều tương tự theo những cách khác nhau thông qua các triển khai khác nhau. Nó cũng mở rộng cùng một lớp Abstract và cung cấp các triển khai khác nhau của các phương thức trừu tượng.
Cùng đọc: Khái niệm hướng đối tượng OPP
Các lớp trừu tượng giúp mô tả các kiểu hành vi chung và hệ thống phân cấp lớp lập trình hướng đối tượng. Nó cũng mô tả các lớp con để cung cấp các chi tiết triển khai của lớp trừu tượng.

8. Khai báo lớp trừu tượng

Cú pháp khai báo lớp trừu tượng

abstract class ten_lop {
thuoc_tinh;
phuong_thuc;
}

Ví dụ khai báo lớp trừu tượng

Ví dụ dưới đây sẽ minh họa cách sử dụng tính trừu tượng trong Java.
Class Animal.java, class Dog.java, class Cat.java, Main.java



abstract class Animal {
    protected String name;
    protected String tiengkeu;
    public abstract void show();
    
}



public class Dog extends Animal {
    
     @Override
     public void show() {
         System.out.println("Tieng keu = Gâu Gau");
     }
}



public class Cat extends Animal {
    @Override
    public void show() {
        // TODO Auto-generated method stub
        System.out.println("Tieng keu = Meo Meo");
    }
}



public class Main {

    public public static void main(String[] args) {
       Dog dog = new Dog();
       dog.show();
       Cat cat = new Cat();
       cat.show();
    }
}

9. Lời kết

Trong bài này, chúng ta đã tìm hiểu về tính chất cuối cùng khi lập trình hướng đối tượng đó là tính trừu tượng trong Java. Sang bài sau, chúng ta sẽ tìm hiểu về các khái niệm còn lại trong lập trình hướng đối tượng với Java. Các bạn theo dõi nhé!

Blogger Comments


Không có nhận xét nào. Chúc mừng bạn là người đầu tiên.

  • Kí tự đặc biệt
  • Tôi Share
  • Star Mạnh Blog
  • Văn Tuấn Blog
  • Tuổi Trẻ IT
  • Văn Thắng Blog
  • Duy Blogs
  • Star Sinh Blog
  • Lê Bá Long IT
  • Đặt liên kết
  • Đặt liên kết
  • Đặt liên kết