2013-04-03 34 views
9

jak czytam poprzez specyfikacji UML, że:jaka jest różnica między klasą i danych: dataType

class has a set of attributes/operations 
and data type has a set of attributes/operations 

1) w odniesieniu do atrybutów/operacji typu danych co to oznacza?

ponieważ nie wiem, jak taki typ danych ma atrybuty i operacje?

2) Jaka jest główna różnica między klasą a typem danych?

Odpowiedz

0

W Object Oriented (OO) podejście , systemy , tym oprogramowanie , są składa się z licznych obiektów które pracują razem poprzez wymianę informacji w formę wartości danych i "wiadomości" . Obiekt jest specyficzną instancją klasy klasy , tak jak twój pies (obiekt) jest specyficzną instancją klasy wszystkich psów. Klasy określają, czym jest obiekt, a obiekty są praktycznymi obiektami, z których można korzystać i którymi można manipulować. Jako definicja, klasa określa, jakie właściwości będą używane do opisania każdego obiektu na podstawie tej klasy. Wewnątrz obiektu każda z tych właściwości będzie miała wartość, która przyczynia się do jej opisu. Dwa obiekty tej samej klasy będą miały te same właściwości, ale będą miały co najmniej jedną właściwość, którą ma inna wartość w każdym z obiektów, jeśli wszystkie właściwości mają te same wartości w obu obiektach. to oni są tym samym obiektem.

typ danych, odnosi się do własności obiektu oraz typu danych każdego atrybutu jest, na przykład ciągu znaków, wartości logicznej całkowitą itp

operacje lub sposoby, co obiekt może czynić takie jak pies :

growl(); 
bark(); 
fetch(); 

itp

Wystarczy popatrzeć na to wyjaśnienie z Class Diagram, to więcej sensu.

+1

„jeżeli wszystkie właściwości mają te same wartości w obu dwoma obiektami następnie są one ten sam przedmiot” To rzeczywiście błędna. Zakładając prostą klasę psów według Twojego przykładu, np. z dwoma nazwami i wiekiem atrybutów, świetnie jest mieć dwa odrębne przypadki Psa, oba o imionach Fido i oba w wieku 6 lat. – Carsten

9

według UML 2.4.1 opisie

typów danych jest specjalnym rodzajem klasyfikatora podobny do klasy. To różni się od klasy tym, że wystąpienia typu danych są identyfikowane tylko według ich wartości. Wszystkie kopie instancji typu danych i instancji tego typu danych o tej samej wartości są uważane za równe instancje . Wystąpienia typu danych, które mają atrybuty (tj. jest typem danych strukturalnych) są uważane za równe, jeśli struktura jest taka sama, a wartości odpowiednich atrybutów są równe. Jeśli typ danych ma atrybuty, wystąpienia tego typu danych będą zawierały wartości atrybutów zgodne z atrybutami.

1) Atrybuty/operacje typu danych mają takie samo znaczenie niż atrybuty/operacji klas tj atrybuty stanowią strukturę typu danych i operacje stanowią metodę dostępną od typu danych.

2) Główna różnica między klasą a typem danych polega na tym, że nie można mieć dwóch instancji typu danych o tych samych wartościach (instancja ta byłaby unikalną instancją).

nadzieję, że to pomaga,

RB