Sử dụng Abstract trong Java

Giới thiệu nội dung bài viết

Chào bạn, nếu bạn là người mới tìm hiểu về lập trình, hẳn bạn đã từng nghe tới khái niệm về Abstract trong lập trình. Nhưng bạn có biết khi nào mình sẽ dùng Abstract không?


1. Abstract là gì

Trừa tượng có nghĩa là tuyến trình che giấu đi những chi tiết quan trọng và chỉ hiển thị những thông tin cần thiết cho người sử dụng. Để thực hiện được tính trừu tượng chúng ta sử dụng từ khoá abstract hoặc interface. Trong bài này anh sẽ giới thiệu về các sử dụng abstract. Chúng ta có thể áp dụng từ khoá abstract cho class hoặc method. Khi áp dụng abstract cho class thì chúng ta không thể tạo đối tượng từ lớp abstract được. Abstract method chỉ được sử dụng và khai báo trong abstract class. Abstract method sẽ không có phần thân (code thực thi). Phần thân code thực thi sẽ được viết bởi lớp con kế thừa abstract class.

  • Abstract class Animal ví dụ sau đây dùng từ khoá abstract. Chú ý chúng ta không thể tạo đối tượng Animal ani = new Animal() được.


1
2
3
4
5
6
abstract class Animal {
  public abstract void animalSound();
  public void sleep() {
    System.out.println("Zzz");
  }
}
  • Ví dụ hoàn chỉnh về abstract class và code thực thi abstract method trong lớp con
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Abstract class
abstract class Animal {
  // Abstract method (does not have a body)
  public abstract void animalSound();
  // Regular method
  public void sleep() {
    System.out.println("Zzz");
  }
}

// Subclass (inherit from Animal)
class Pig extends Animal {
  public void animalSound() {
    // The body of animalSound() is provided here
    System.out.println("The pig says: wee wee");
  }
}

class MyMainClass {
  public static void main(String[] args) {
    Pig myPig = new Pig(); // Create a Pig object
    myPig.animalSound();
    myPig.sleep();
  }
}

2. Tại sao chúng ta sử dụng Abstract

  • Để đảm bảo tính bảo mật.
  • Chúng ta chỉ đưa ra những thông tin cần thiết và che giấu những thông tin quan trọng

3. Cách tạo abstract trong Java

Mọi người hãy subcribe kênh youtube dưới đây nhé. Videos về các kỹ năng mềm và lập trình sẽ được cập nhật hằng tuần


Comments