Definirea claselor in Java

claseDefinirea claselor

[public][abstract][final] class NumeClasa

[extends NumeSuperclasa]

[implements Interfata1 [, Interfata2 … ]]

{

//corpul clasei

}

Antetul clasei:

[public][abstract][final] class NumeClasa

este format din modificatorii clasei, cuvântul rezervat class şi numele clasei NumeClasa.

Prezenţa parantezelor [] indică faptul că ceea ce este cuprins între ele este opţional.

Modificatorii clasei sunt:

  • public: dacă o clasă este declarată public, ea este accesibilă oricărei alte clase. Dacă modificatorul public nu apare, clasa poate fi accesată doar de către clasele din pachetul căruia aparţine clasa (dacă nu se specifică un anume pachet, toate clasele din directorul curent sunt considerate a fi în acelaşi pachet). Spaţiul de căutare este definit de variabila sistem CLASSPATH.
  • abstract: o clasă declarată abstractă este o clasă şablon adică ea este folosită doar pentru a crea un model comun pentru o serie de subclase. O clasă trebuie declarată abstractă daca ea este incomplet implementată adică nu toate metodele ei sunt definite. O astfel de clasă nu poate fi instanţiată, dar poate fi extinsă de alte clase care să implementeze metodele nedefinite. Doar clasele abstracte pot să conţină metode abstracte (metode declarate dar nu implementate).
  • final o clasă poate fi declarată finală dacă a fost complet definită şi nu se doreşte să fie extinsă (să aibă subclase); cu alte cuvinte ea nu poate apare în clauza extends a altei clase.

 

Observaţie: O clasă declarată atât abstractă cât şi finală generează eroare. Dacă clasa este abstractă înseamnă că ea conţine metode neimplementate şi, prin urmare trebuie extinsă de o altă clasă care să le implementeze. Dar, dacă ar fi şi finală, nu ar putea fi extinsă.

După numele clasei se pot specifica, dacă este cazul, clasele moştenite şi interfeţele implementate. O clasă poate moşteni o singură clasă, prin urmare dacă apare clauza extends ea este urmată doar de numele unei clase. Însă, o clasă poate implementa mai multe interfeţe, ale căror nume apar după clauza implements şi trebuie separate prin virgulă. Asupra moştenirii şi interfeţelor se găsesc mai multe detalii în subcapitolele „Moştenire” respectiv „Interfeţe”.

Corpul unei clase urmează după antetul clasei şi este cuprins între acolade. Conţine:

  • declararea variabilelor instanţă şi clasă care împreună formează variabilele membru;
  • definirea metodelor instanţă şi clasă care împreună formează metodele membru.

Observaţie: variabilele unei clase pot avea acelaşi nume cu metodele clasei.

Anunțuri

Lasă un răspuns

Completează mai jos detaliile tale sau dă clic pe un icon pentru a te autentifica:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s