Giới thiệu đầy đủ về các lớp trừu tượng trong Java



Bài viết này sẽ giúp bạn có cách tiếp cận chi tiết về các Lớp trừu tượng trong Java cùng với các ví dụ để hiểu khái niệm này theo cách tốt hơn nhiều.

Các lớp trừu tượng trong giúp người dùng đạt được sự trừu tượng, đây là thực hành lập trình hướng đối tượng quan trọng nhất được tuân theo trong quá trình thiết kế phần mềm. Trong bài viết này, chúng ta sẽ thảo luận về thuật ngữ của các lớp trừu tượng thông qua khung sau.

Các lớp trừu tượng trong Java là gì?

Các lớp trừu tượng trong đóng vai trò như một ranh giới giữa phương pháp thực hiện và chức năng của nó. Nó được sử dụng để trao đổi chức năng giữa Bê tông các thành viên trong lớp và trừu tượng Lớp học.





Abstract-Classes-in-Java-Edureka

Các lớp trừu tượng được coi là những lớp ẩn Thực hiện phương pháp chi tiết từ người dùng và chỉ hiển thị Phương pháp Chức năng. Chúng được khai báo bằng từ khóa trừu tượng . Những phương pháp này có thể bao gồm trừu tượngKhông trừu tượng các phương pháp trong chúng.

quản lý mua sắm trong quản lý dự án

Tại sao chúng ta cần một lớp trừu tượng trong Java?

Chúng tôi cần các lớp trừu tượng trong Java vì những lý do sau:



  • Hỗ trợ các lớp trừu tượng Độ phân giải phương pháp động trong thời gian chạy
  • Chúng giúp người dùng đạt được Khớp nối lỏng lẻo
  • Các lớp trừu tượng tách biệt Định nghĩa phương pháp từ Người thừa kế Lớp phụ
  • Họ cung cấp Chức năng mặc định của phương thức đã xác định cho tất cả các Lớp con
  • Các lớp trừu tượng cung cấp một Bản mẫu cho các lớp học cụ thể trong tương lai
  • Lớp trừu tượng cho phép Khả năng sử dụng lại

Quy tắc sử dụng các lớp trừu tượng trong Java

Để triển khai một Lớp trừu tượng trong Java, chúng ta cần tuân theo các quy tắc như được mô tả bên dưới:



  • Một lớp trừu tượng phải được khai báo bằng cách sử dụng trừu tượng từ khóa.
  • Các lớp trừu tượng có thể bao gồm trừu tượngkhông trừu tượng các phương pháp.
  • Lớp Tóm tắt không được ngay lập tức.
  • Chúng có thể bao gồm người xây dựngtĩnh các phương pháp.
  • Một lớp Tóm tắt bao gồm sau cùng các phương pháp.

Các cách để đạt được tính trừu tượng trong Java

Quá trình trừu tượng hóa trong Java có thể đạt được bằng hai phương pháp sau như được đề cập dưới đây:

  1. Triển khai một lớp trừu tượng
  2. Triển khai một giao diện

Cú pháp cho các lớp trừu tượng

Cú pháp để xác định các lớp trừu tượng và phương thức trừu tượng như sau:

lớp trừu tượng Edureka {}
lớp trừu tượng Phương thức ()

Ví dụ thực tế về các lớp trừu tượng

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

package Abstract public abstract class Person {private String name private Chuỗi giới tính public Person (String nm, String gen) {this.name = nm this.uality = gen} public abstract void Đang học () @Override public String toString () {return ' Tên = '+ this.name +' :: Gender = '+ this.uality}}

// Lớp học sinh

package Abstract public class Student expand Person {private int StudentID public Student (String nm, String gen, int id) {super (nm, gen) this.StudentID = id} @Override public void Study () {if (StudentID == 0 ) {System.out.println ('Không học')} else {System.out.println ('Theo đuổi Bằng Cử nhân Kỹ thuật')}} public static void main (String args []) {Person student = new Student ('Priya', 'Nữ', 0) Person student1 = new Student ('Karan', 'Nam', 201021) Person student2 = new Student ('Kumari', 'Female', 101021) Person student3 = new Student (' John ',' Nam ', 201661) student.Studying () student1.Studying () student2.Studying () student3.Studying () System.out.println (student.toString ()) System.out.println (student1.toString ()) System.out.println (student2.toString ()) System.out.println (student3.toString ())}}

Đầu ra:

trong nhóm hằng chuỗi, sẽ không có hai đối tượng chuỗi có cùng nội dung.

Không học
Theo đuổi bằng Cử nhân Kỹ thuật
Theo đuổi bằng Cử nhân Kỹ thuật
Theo đuổi bằng Cử nhân Kỹ thuật
Tên = Priya :: Giới tính = Nữ
Tên = Karan :: Giới tính = Nam
Tên = Kumari :: Giới tính = Nữ
Tên = John :: Giới tính = Nam

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

Giao diện Lớp trừu tượng
Chỉ có thể có các Phương thức Tóm tắtCó thể có các phương pháp trừu tượng và không trừu tượng
Nó chỉ có các Biến cuối cùngNó bao gồm các biến không cuối cùng
Nó chỉ có các biến Static và FinalNó có các biến Static, Non-Static, Final, Non-Final
Sẽ không triển khai Lớp trừu tượngCó thể triển khai một Giao diện
Được triển khai bằng Từ khóa “triển khai”Được triển khai bằng Từ khóa “mở rộng”
Chỉ có thể mở rộng một Giao diệnCó thể mở rộng các Lớp và Giao diện Java
Thành viên là Công khai theo mặc địnhThành viên có thể ở chế độ riêng tư và được bảo vệ

// Ví dụ về lớp trừu tượng

package AbstactVSinterface abstract class Shape {String objectName = '' Shape (String name) {this.objectName = name} abstract public double area () abstract public void draw ()} class Hình chữ nhật kéo dài Hình dạng {int length, width Rectangle (int length, int width, String name) {super (name) this.length = length this.width = width} @Override public void draw () {System.out.println ('Hình chữ nhật được vẽ')} @Override public double area () {return (double) (length * width)}} class Hình tròn mở rộng Hình dạng {double pi = 3,14 int radius Circle (int radius, String name) {super (name) this.radius = radius} @Override public void draw () { System.out.println ('Vòng tròn được vẽ')} @Override public double area () {return (double) ((pi * radius * radius) / 2)}} class Edureka {public static void main (String [] args ) {Hình dạng chữ nhật = mới Hình chữ nhật (20, 30, 'Hình chữ nhật') System.out.println ('Diện tích hình chữ nhật:' + direct.area ()) Hình dạng hình tròn = mới Hình tròn (20, 'Hình chữ nhật') System.out .println ('Diện tích hình tròn là:' + circle.area ())}}

Đầu ra:

câu nào sau đây là ví dụ về câu lệnh kiểm soát?

Diện tích hình chữ nhật: 600,0
Diện tích hình tròn là: 628,0

// Ví dụ về giao diện

package absVSint interface Shape {void draw () double area ()} class Rectangle thực hiện Shape {int length, width Rectangle (int length, int width) {this.length = length this.width = width} @Override public void draw () {System.out.println ('Hình chữ nhật đã được vẽ')} @Override public double area () {return (double) (length * width)}} class Circle thực hiện Shape {double pi = 3,14 int radius Circle (int radius) {this.radius = radius} @Override public void draw () {System.out.println ('Vòng tròn đã được vẽ')} @Override vùng kép công khai () {return (double) ((pi * radius * radius) / 2)}} class Edureka {public static void main (String [] args) {Shape direct = new Rectangle (20, 30) System.out.println ('Diện tích hình chữ nhật:' + direct.area ()) Hình tròn = new Circle (20) System.out.println ('Diện tích hình tròn:' + circle.area ())}}

Đầu ra:

Diện tích hình chữ nhật: 600,0
Diện tích hình tròn: 628,0

Với điều này, chúng ta đến phần cuối của bài viết này. Tôi hy vọng bạn đã hiểu tầm quan trọng của Trừu tượng, Cú pháp, chức năng, Quy tắc Trừu tượng trong Java và các ví dụ thực tế liên quan đến chúng.

Bây giờ bạn đã hiểu cơ bản về Java, hãy xem của Edureka, một công ty học trực tuyến đáng tin cậy với mạng lưới hơn 250.000 người học hài lòng trải dài trên toàn cầu. Khóa đào tạo và cấp chứng chỉ về Java J2EE và SOA của Edureka được thiết kế cho sinh viên và các chuyên gia muốn trở thành Nhà phát triển Java. Khóa học được thiết kế để cung cấp cho bạn khởi đầu về lập trình Java và đào tạo bạn về cả khái niệm Java cốt lõi và nâng cao cùng với các khung Java khác nhau như Hibernate & Mùa xuân .

Có một câu hỏi cho chúng tôi? Hãy đề cập đến nó trong phần nhận xét của blog “Các lớp trừu tượng trong Java” này và chúng tôi sẽ liên hệ lại với bạn trong thời gian sớm nhất.