Home - qdidactic.com
Didactica si proiecte didacticeBani si dezvoltarea cariereiStiinta  si proiecte tehniceIstorie si biografiiSanatate si medicinaDezvoltare personala
referate stiintaSa fii al doilea inseamna sa fii primul care pierde - Ayrton Senna





Aeronautica Comunicatii Drept Informatica Nutritie Sociologie
Tehnica mecanica

Java


Qdidactic » stiinta & tehnica » informatica » java
Diagrame de Clasa - operatii/Metode



Diagrame de Clasa - operatii/Metode



Un obiect este orice persoana, lucru, fenomen, concept etc. care poate exista intr-un sistem. Obiectele poseda cunostinte, ele avand attribute si pot executa activitati ele avand metode. O clasa este o reprezentare a unui obiect si in multe privinte este un sablon din care sunt dezvoltate obiectele. Desi sunt mii de studenti ce frecventeaza o facultate intr-un sistem vom modela o singura clasa numita Student care va reprezenta intreaga masa de studenti.

Clasele se reprezinta ca si dreptunghiuri cu 3 sectiuni: prima este numele clasei, sectiunea din mijloc este desemnata pentru attribute, iar cea de-a treia pentru metode .

Nume Clasa

Atribute

Metode


Numele clasei este foarte important fiind primul mijloc de recunoastere a resursei fundamentale din model, drept pentru care trebuie sa fie concis si clar.

Atribut

Atributul are sintaxa urmatoare:

visibilitate nume [multiplicitate] : tip = valoare_initiala



unde

  • Vizibilitatea poate fi:
    • public: cu simbolul + ,atributul fiind accesibil din afara clasei
    • protected: cu simbolul # ,atributul este accesibil din subclasele clasei din care face parte
    • private :cu simbolul – ,atributul nu este accesibil din afara clasei
    • package: cu simbolul ~ ,atributul este accesibil de catre obiectele din acelasi pachet
  • multiplicitatea   indica numarul de valori pe care pe care il poate lua un atribut.Multiplicitatea este reprezentata ca limita_inferioara . limita_superioara
  • tip indica tipul de data al atributului si poate fi: int, Integer, String etc..
  • valoare_initiala este valoarea initiala a atributului.

Student

+ID:int

-Name:String

-Description:String

-Sex:Char=”M”

-note[0..*]:Integer




Operatii/Metode

Operatia are sintaxa urmatoare:

visibilitate nume_operatie (lista_parametri) : return_type

  • vizibilitatea la fel ca in cazul atributelor
  • nume_operatie –numele operatiei respective
  • lista_parametri –  sintaxa fel: tip = valoare_default unde:
    • fel este optional si poate fi:
      • in: indica faptul ca parametrul este input-only, si se poate sa nu fie modificata de operatie
      • out: indica faptul ca parametrul este output-only, si se poate sa fie modificat de operatie
      • inout: indica faptul ca parametrul este input, si se poate sa fie modificat de operatie sa comunice informatie clientului care invoca operatia respective.
    • Tip: tipul de data al parametrului
  • Return_type: tipul datei pe acre operatia il intoarce.



Student


+getName():String

-corigenta(nota:Integer, materie:String=”matematica”):Boolean


Obiecte

Un obiect este un concept specific, sau instanta unei clase, avand caracteristici definite de clasa din care face parte. Aceste caracteristici sunt atat structurale(atribute) cat si comportamentale(metode sau operatii). Ele se reprezinta ca dreptunghiuri cu 2 compartimente despartite prin linii orizontale in care numele sunt subliniate, avand sintaxa  nume_obiect : [nume_clasa] .


Popescu:Student


Aceasta inseamna ca obiectul Popescu este un obiect al clasei Student.

Popescu:Student

ID=2

Nume=”Ion”


Obiectele din Diagramele UML care nu au nume se numesc obiecte anonime(exemplu mai jos).

:Student

ID=3


Obiectele pentru care nu este specificata clasa se numesc obiecte nespecificate(exemplu mai jos).

XYZ

Relatii dintre clase

Asociere:

Obiectele sunt deobicei associate intre ele.




Indicator de Multiplicitate: precizeaza cate obiecte din clasa respective participa la realizarea legaturii.

Indicator de multiplicitate

Indicator

Explicatie


zero sau unu


unu


zero sau mai mult


unu sau mai mult

n

n(n>1)

0..n

zero sau n(n>1)

1..n

unu sau n(n>1)



Exemplu:

Poate fi si asociere n-ara atunci cand are loc intre cel putin 3 clase.


Mostenire

Relatia de mostenire este o relatie de tip “is a” sau “este” pentru ca tipul subclasei este un tip de clasa parinte. Subclasa mosteneste atributele si metodele clase parinte. In exemplu de mai jos clasa de baza este Language iar subclasele sunt Java si C++:

Agregare: Cand o clasa este formata ca o colectie de alte calse, relatia dintre aceste clase se numeste agregare. Este o relatie de tip “Has a”.



Figura de mai sus se citeste astfel:

-un agent poate fi parte dintr-o singura agentie, dar nu trebuie sa fie obligatoriu parte a unei agentii(de aici 0..1) el putand fi agent independent

- agentia este intotdeauna compusa din macar un agent, dar poate avea mai multi(de aici 1..*)

-un agent este considerat un angajat(numele rolului) al unei agentii


Compozitie: este o varianta a relatiei de agregare implicand o puternica legatura a ciclului de viata dintre obiectele associate. Cu alte cuvinte este o forma de agregare in care obiectul parte poate fi membru al unui singur obiect de tip intreg la un moment dat.”Obiectul intreg este responsabil pentru existenta si adunarea obiectelor parti.”

Exemplu1:

Diagrama de mai sus se citeste astfel:

Compania va avea cel putin un department iar cand compania va fi desfiintata departamentul va fi desfiintat automat.


Exemplu2:

Figura de mai sus se citeste astfel o cladire este compusa dintr-una sau mai multe incaperi, iar o incapere poate fi compusa din 0 sau mai multe subincaperi(camere) avem aici de a face cu compozitia reflexiva.


Nota: Clasa parte poate fi legata doar de o singura instanta a clasei intreg.


Realizarea: In relatia de realizare o entitate(de obicei interfata) defineste un set de functionalitati iar cealalta entitate(de obicei o clasa) implementeaza acele functionalitati.

Exemplu:

In figura de mai sus Parser este interfata iar HTMLParser este clasa ce implementeaza functionalitatile definite de catre Parser.

Un alt exemplu:


In figura d emai sus atat clasele Professor cat si Student implementeaza interfata Person

Dependenta: Este o relatie intre doua elemente in care o schimbare intr-un element(independent) afecteaza pe celalalt element(dependent).


Exemplu de modelare a relatiilor dintre membrii unei facultati.




Diagrame de pachete





Contact |- ia legatura cu noi -| contact
Adauga document |- pune-ti documente online -| adauga-document
Termeni & conditii de utilizare |- politica de cookies si de confidentialitate -| termeni
Copyright © |- 2024 - Toate drepturile rezervate -| copyright

stiinta

Java



Access
Autocad
Baze de date
C
Calculatoare
Catia
Excel
Foxpro
Grafica design
Html
Internet
Java
Linux
Mathcad
Matlab
Oracle
Outlook
Photoshop
Php
Powerpoint
Retele calculatoare
Sql
Windows
Word

Referate pe aceeasi tema


Diagrame de Clasa - operatii/Metode



Ramai informat
Informatia de care ai nevoie
Acces nelimitat la mii de documente. Online e mai simplu.

Contribuie si tu!
Adauga online documentul tau.