FaCode Ngôn ngữ java Lớp abstract trong java

FaCode Ngôn ngữ Java

FaCode Ngôn ngữ java Lớp abstract trong java

Một lớp được khai báo với từ khóa abstract là lớp abstract trong Java. Lớp abstract có nghĩa là lớp trừu tượng, nó có thể có các phương thức abstract hoặc non-abtract.

Trước khi tìm hiểu về lớp trừu tượng trong Java, bạn cần hiểu tính trừu tượng trong Java là gì.

Tính trừu tượng trong java

Tính trừu tượng là một tiến trình ẩn các cài đặt chi tiết và chỉ hiển thị tính năng tới người dùng.

Nói cách khác, nó chỉ hiển thị các thứ quan trọng tới người dùng và ẩn các chi tiết nội tại, ví dụ: để gửi tin nhắn, người dùng chỉ cần soạn text và gửi tin. Bạn không biết tiến trình xử lý nội tại về phân phối tin nhắn.

Tính trừu tượng giúp bạn trọng tâm hơn vào đối tượng thay vì quan tâm đến cách nó thực hiện.

Các cách để đạt được sự trừu tượng hóa

Có 2 cách để đạt được sự trừu tượng hóa trong java

  1. Sử dụng lớp abstract
  2. Sử dụng interface

Phương thức trừu tượng trong Java

Một phương thức được khai báo là abstract và không có trình triển khai thì đó là phương thức trừu tượng.

Nếu bạn muốn một lớp chứa một phương thức cụ thể nhưng bạn muốn triển khai thực sự phương thức đó để được quyết định bởi các lớp con, thì bạn có thể khai báo phương thức đó trong lớp cha ở dạng abstract.

Từ khóa abstract được sử dụng để khai báo một phương thức dạng abstract. Một phương thức abstract không có thân phương thức.

Phương thức abstract sẽ không có định nghĩa, được theo sau bởi dấu chấm phảy, không có dấu ngoặc nhọn theo sau:

Ví dụ về lớp trừu tượng và phương thức trừu tượng trong Java

Trong ví dụ này, Bike là lớp trừu tượng chỉ chứa một phương thức trừu tượng là run. Trình triển khai của nó được cung cấp bởi lớp Honda.

FaCode Ngôn ngữ java

Kết quả:

FaCode Ngôn ngữ java

Code:

abstract class Bike{ 

         abstract void run(); 

  } 

          class Honda4 extends Bike{ 

 void run() {

          System.out.println("running safely..");

  }

  public static void main(String args[])

  { 

           Bike obj = new Honda4(); 

           obj.run(); 

  } 
}

Kế thừa lớp Abstract trong Java

Trong ví dụ này, Shape là lớp trừu tượng, trình triển khai của nó được cung cấp bởi lớp Rectangle và lớp Circle. Hai lớp này kế thừa lớp trừu tượng Shape.

TestAbstraction1.java

FaCode Ngôn ngữ java

Kết quả:

FaCode Ngôn ngữ java

Code:

// Lớp trừu tượng Shape

abstract class Shape{ 

    abstract void draw(); 

} 

//Trong tình huống này, trình triển khai được cung cấp bởi ai đó

// Ví dụ: người sử dụng cuối cùng nào đó

class Rectangle extends Shape{ 

void draw(){

  System.out.println("Ve hinh chu nhat");

  } 

} 

class Circle1 extends Shape{ 

void draw(){

   System.out.println("Ve hinh tron");

} 

} 

//Trong tình huống này, phương thức được gọi bởi lập trình viên hoặc người dùng 

class TestAbstraction1{ 

public static void main(String args[]) { 

   // Trong tình huống này, đối tượng được cung cấp thông qua phương thức,

   // Chẳng hạng như getShape()

   Shape s=new Circle1();

   s.draw(); 

   } 

}
FaCode Ngôn ngữ Java

____________________________________________________________________________________________

Khóa học lập trình

7 Java frameworks phổ biến nhất hiện nay

xem thêm

__________

FaCode là một seri học tập lập trình, lần này là FaCode ngôn ngữ Java, bằng mọi nỗ lực FaCode sẽ hoàn thành các mục tiêu đề ra trong FaCode Ngôn ngữ Java. Hãy đồng hành cùng FaCode Ngôn ngữ Java và theo dõi chúng tôi nhé. FaCode Ngôn ngữ Java rất mong nhận được lời góp ý từ phía cộng đồng. Share4Happy với phương châm chia sẻ để hạnh phúc.

Related posts

FaCode Ngôn ngữ Java những câu hỏi phỏng vấn về Hibernate trong Java

FaCode Ngôn ngữ Java những câu hỏi phỏng vấn về JSP trong Java

FaCode Ngôn ngữ Java những câu hỏi phỏng vấn servlet.