Ce este abstractizarea în POO? Java Abstract Class & Metodă

Cuprins:

Anonim

Ce este abstractizarea în POO?

Abstracția este conceptul de programare orientată pe obiecte care „arată” numai atribute esențiale și „ascunde” informații inutile. Scopul principal al abstractizării este ascunderea detaliilor inutile de la utilizatori. Abstracția selectează date dintr-un grup mai mare pentru a afișa utilizatorului numai detalii relevante ale obiectului. Ajută la reducerea complexității și eforturilor de programare. Este unul dintre cele mai importante concepte ale OOP-urilor.

Faceți clic aici dacă videoclipul nu este accesibil

Să studiem abstractizarea în POO cu un exemplu:

Să presupunem că doriți să creați o aplicație bancară și vi se cere să colectați toate informațiile despre clientul dvs. Există șanse ca să veniți cu următoarele informații despre client

Abstracție în Java

Dar, nu toate informațiile de mai sus sunt necesare pentru a crea o aplicație bancară.

Deci, trebuie să selectați numai informațiile utile pentru aplicația dvs. bancară din acel pool. Datele precum numele, adresa, informațiile fiscale etc. au sens pentru o aplicație bancară care este un exemplu de abstractizare în POO

Deoarece am preluat / eliminat / selectat informațiile despre clienți dintr-un grup mai mare, procesul este denumit Abstracție în POO.

Cu toate acestea, aceleași informații odată extrase pot fi utilizate pentru o gamă largă de aplicații. De exemplu, puteți utiliza aceleași date pentru aplicația spitalului, aplicația portalului de locuri de muncă, o bază de date guvernamentală etc., cu puține sau deloc modificări. Prin urmare, devin datele dvs. de bază. Acesta este un avantaj al abstractizării în POO.

Diferența dintre abstractizare și încapsulare

Abstracție Incapsularea
Abstracția în programarea orientată pe obiecte rezolvă problemele la nivel de proiectare. Incapsularea rezolvă nivelul de implementare.
Abstracția în programare este despre ascunderea detaliilor nedorite în timp ce se afișează cele mai importante informații. Incapsularea înseamnă legarea codului și a datelor într-o singură unitate.
Abstracția datelor în Java permite concentrarea asupra a ceea ce trebuie să conțină obiectul informațional Incapsularea înseamnă ascunderea detaliilor interne sau mecanicii modului în care un obiect face ceva din motive de securitate.

Diferența dintre clasa abstractă și interfață

Clasa abstractă Interfață
O clasă abstractă poate avea atât metode abstracte, cât și metode non-abstracte. Interfața poate avea doar metode abstracte.
Nu acceptă moșteniri multiple. Acceptă mai multe moșteniri.
Poate asigura implementarea interfeței. Nu poate asigura implementarea clasei abstracte.
O clasă abstractă poate avea metode publice protejate și abstracte. O interfață poate avea numai metode abstracte publice.
O clasă abstractă poate avea o variabilă finală, statică sau statică finală cu orice specificator de acces. Interfața poate avea doar o variabilă publică statică finală.

Ce este clasa abstractă?

Clasa abstractă este un tip de clasă în POO, care declară una sau mai multe metode abstracte. Aceste clase pot avea metode abstracte, precum și metode concrete. O clasă normală nu poate avea metode abstracte. O clasă abstractă este o clasă care conține cel puțin o metodă abstractă.

Ce sunt metodele abstracte?

Metoda abstractă este o metodă care are doar definiția metodei, dar nu conține implementare. O metodă fără corp este cunoscută sub numele de Metodă abstractă. Trebuie declarat într-o clasă abstractă. Metoda abstractă nu va fi niciodată definitivă deoarece clasa abstractă trebuie să implementeze toate metodele abstracte.

Avantajele abstractizării

  • Principalul avantaj al utilizării unei abstracții în programare este că vă permite să grupați mai multe clase înrudite ca frați.
  • Abstracția în programarea orientată pe obiecte ajută la reducerea complexității procesului de proiectare și implementare a software-ului.

Când se utilizează Metode abstracte și Clasa abstracte?

Metodele abstracte sunt declarate în cea mai mare parte în care două sau mai multe subclasele fac același lucru în moduri diferite prin implementări diferite. De asemenea, extinde aceeași clasă Abstract și oferă diferite implementări ale metodelor abstracte.

Clasele abstracte ajută la descrierea tipurilor generice de comportamente și a ierarhiei claselor de programare orientată obiect. De asemenea, descrie subclasele pentru a oferi detalii de implementare a clasei abstracte.

Rezumat:

  • Abstracția în programare este procesul de selectare a seturilor de date importante pentru un obiect din software-ul dvs. și de a le lăsa pe cele nesemnificative.
  • Odată ce v-ați modelat obiectul folosind Data Abstraction în Java, același set de date ar putea fi utilizat în aplicații diferite.