Superclasă (informatică)

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Superclasa este un termen folosit în programarea orientată pe obiecte pentru a indica o clasă generică, nu neapărat abstractă , care poate fi extinsă cu una sau mai multe subclase , sau clase copil, care reprezintă versiuni specializate ale acesteia. Funcționalitatea superclasei este moștenită de toate clasele de copii, care pot adăuga altele noi. Metodele publice sunt moștenite de subclasă, dar subclasa le poate modifica după cum este necesar; acest fenomen se numește primordial .

Exemplu de utilizare

Un exemplu de utilizare a unei superclase este o clasă Vehicle cu anumite metode și variabile, din care se extind diferite clase, cum ar fi Mașina sau Motocicleta . Acestea din urmă moștenesc variabilele și metodele vehiculului la care se adaugă variabilele și metodele proprii clasei. Modalitățile în care este reprezentată această legătură de moștenire variază în funcție de limba utilizată.

Java

Când programați în clasele copil Java, moșteniți metodele și variabilele superclasei. Dacă există metode sau atribute cu același nume și cu aceiași parametri în superclasă și în subclasă, metoda sau atributul subclasei îl înlocuiește pe cel al superclasei.

Exemplu

 vehicul de clasă publică {
          placă publică de corzi ;
          public int deplasare;
         
          vehicul public ( plăcuță de înmatriculare șir , deplasare int ) {
              aceasta . placă = plate ;
              aceasta . displacement = deplasare ;
          }
          public nul print () {
              Sistem . afară . println ( "plăcuță de înmatriculare:" + plăcuță de înmatriculare ); // Imprim plăcuța de înmatriculare
              Sistem . afară . println ( "deplasare:" + deplasare ); // Imprim deplasarea
          }
      }
 public class Machine extinde Vehicle { // create subclass Machine
          public int NumărPorturi ;
          public Machine ( deplasare int , placă de șiruri , int numberPorts ) { // definește producătorul
               super ( înmatriculare , deplasare ); // această afirmație trebuie să fie neapărat prima din constructor
               // cu constructorul se trec valorile parametrilor primiți în intrare
               aceasta . numberPorts = numărPorturi ; // Trec valoarea parametrului în variabila obiectului nou creat
          }
          public nul print () {
               super . print (); // apelează metoda de imprimare a superclasei
               Sistem . afară . println ( "număr port:" + număr port ); // imprimați numărul de uși
          }
      }

În acest exemplu, dacă print () ; pe baza suprasolicitării, rezultatul de pe ecran va include plăcuța de înmatriculare, deplasarea și numărul de uși.

Bibliografie

  • Fabrizia Scorzoni, Computer Science Programming in Java , Turin, Loescher, 2009, ISBN 978-88-8433-030-7 .

Elemente conexe

linkuri externe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT