Java avansată de clasă

numele final al coardei;

valoarea obiectului privat = null;

public Attr (numele șirului)

publiс Attr (Nume șir, valoare obiectiv)

public String getName ()

obiect public getValue ()

obiect public Obiect setValue (Object newValue)

Obiect oldVal = Valoare;







public String toString ()

retur numele + "=" "+ valoare" "";

Următoarea clasă pe care o vom examina extinde conceptul de atribut, permițându-i să fie completat cu informații despre culoare. Descriere de culoare dat nici un nume, cum ar fi „roșu“ sau „ecru“, care ar trebui să existe într-un tabel, sau numărul admite posibilitatea transformării de a obține un standard, o formă mai eficientă de reprezentare a culorilor numit de contact (presupunând că clasa corespunzătoare definită mai devreme). Funcționarea convertirii unei descrieri de culoare într-un obiect de tip este laborioasă, așa că am dori să o realizăm doar o singură dată. Extindem clasa Attr și o creăm pe bază.

clasa ColorAttr extinde Attr

privat Screencolor myColor; // Culoarea decodificată

public ColorAttr (Super-șir (nume, valoare)

public ColorAttr (numele șirului)

public ColorAttr (numele șirului, valoarea ScreenColor)





obiect public Object setVal (Object newValue)

// valoarea apelului inițial pentru clasa de bază

Object retval = super.setvalue (newValue);

/ ** atribuire în obiectul myColor * screenColor, nu descrierea * /

public screenColor setvalue (screencolor newValue)

// Mai întâi numim valoarea de referință a clasei de bază

ScreenColor oldValue = myColor;

/ ** obținerea obiectului screenColor * cu culoarea decodificată * /

public screenColor getColor ()

/ ** atribuirea de valori myColor,

* derivate din descrierea în valoare * /

protejat void decodeColor ()

dacă (getValue () == null)

myColor = nou ecranColor (getValue ());

Noua clasă moștenește ColorAttr (lărgește) clasa Attr - el este capabil să îndeplinească toate funcțiile Attr clasa și dotate cu altele noi. Astfel, Attr este o clasă de bază, iar CotorAttr este o clasă derivată. Ierarhia claselor - în direcția de la derivați la cea de bază - în acest caz poate fi reprezentată după cum urmează: Culoare -> Attr -> Obiect.

Clasa extinsă ColorAttr face următoarele:

· Oferă trei versiuni de designeri - două dintre ele „oglinda“ constructori funcția de afișare a clasei de bază, iar al treilea interacționează direct cu obiectul screenColor;

· Simultan suprascrie și metoda suprasarcini clasă de bază SetValue astfel încât să permită atribuirea unei noi componente de culoare a atributului;

· Conține o nouă metodă getColor care returnează o valoare care este o descriere a culorii convertită la un obiect ScreenColor.

În următoarele secțiuni vom încerca să vă spun despre complexitatea moștenirii și influența pe care în proces sunt supuse la diverși membri ai clasei.







Articole similare

Trimiteți-le prietenilor: