Lớp tĩnh hoặc gọi tới hàm tĩnh được trình bày trong sơ đồ tuần tự như thế nào? Theo sự hiểu biết của tôi, vòng đời thuộc về một thể hiện/đối tượng của một lớp. This article nói metaclass khuôn mẫu có thể được sử dụng.Làm thế nào để trình bày lớp tĩnh hoặc gọi hàm trong biểu đồ trình tự?
Trả lời
Vì vậy, cuối cùng, đó là việc sử dụng khuôn mẫu để đề cập đến một lớp/chức năng tĩnh. Gạch dưới là không được áp dụng nhiều hơn trong UML 2.4.1 Aug 2011, trang trang 86, dưới tiêu đề Notation và Presentation Option
(+1) Tốt để nghe về nó.Khi mô hình hóa trên bảng trắng/bảng đen hoặc sổ ghi chép, gạch dưới không rõ ràng. Cùng đi với ký hiệu chữ thảo ... – umlcat
Tôi nghĩ rằng bình luận của bạn bao gồm hầu hết của nó:
UML 2 Chuỗi Sơ đồ: Chú ý cách nhãn đối tượng được nhấn mạnh, các lớp học và các diễn viên không Có vẻ như lớp tĩnh hoặc gọi đến một hàm tĩnh được đại diện với cùng một khuôn mẫu được cung cấp 1- phần tên của tên mẫu: ClassName phải rỗng - Nó không được gạch dưới.
UML không thể bao quát điều này hoàn toàn vì tĩnh không phải là định nghĩa UML, mỗi ngôn ngữ có chênh lệch nhỏ. Tuy nhiên thông số UML cho "features" [pg. 69] (attr/hoạt động):
isStatic: Boolean - Chỉ định xem tính năng này có phân biệt cá thể được phân loại bởi trình phân loại (sai) hay chính phân loại (đúng). Giá trị mặc định là sai.
Lưu ý rằng họ nói chính trình phân loại. Vì vậy, câu hỏi là tôi có thể đặt một classifier một sơ đồ trình tự, không phải là một thể hiện? Cũng lưu ý rằng không phải là trình phân loại có thể là tĩnh. Trang 27 của cùng một đặc tả UML cho thấy không có isStatic trong lớp meta "classifier" (class). Vì vậy, UML không cung cấp một tính năng mô hình chính thức cho các lớp tĩnh. Bạn có thể sử dụng khuôn mẫu hoặc từ khóa hoặc hồ sơ UML của riêng bạn và mở rộng Lớp học. Nhưng câu trả lời ngắn gọn là làm những gì bạn đã đăng.
[UML 2.4.1 Aug 2011] (http://www.omg.org/spec/UML/2.4.1/Superstructure/PDF), dưới tiêu đề 'Ký hiệu' và' Tùy chọn trình bày ', có vẻ mâu thuẫn với nhận xét của tôi hoặc bài viết được giới thiệu đó không còn giá trị sau khi phát hành UML 2 – bjan
"Trong trường hợp nghi ngờ, sử dụng ý kiến, hoặc định kiến ..."
Chuỗi Diagram:
.......................................................
....+-------------+...........+-------------------+....
....| <<class>> |...........| <<class>> |....
....| Cat |...........| FastFoodTerminal |....
....+------+------+...........+---------+---------+....
...........|............................|..............
...........|..........<<static>>........|..............
...........|...........TurnOn().........|..............
...........+--------------------------->+---+..........
...........|............................|...|..........
...........+<---------------------------+<--+..........
...........|............................|..............
...........|.......Answer...=...........|..............
...........|..DoYouHaveCheeseBurger()...|..............
...........+--------------------------->+---+..........
...........|............................|...|..........
...........+<---------------------------+<--+..........
...........|............................|..............
.......................................................
Class Diagram:
...........................................................
....+-------------------------------------------------+....
....| <<class>> |....
....| FastFoodTerminal |....
....+-------------------------------------------------+....
....| [+] void: FastFoodTerminal(); <<constructor>> |....
....| [#] int: ObtainMoneyDifference(); |....
....| [+] void: ReceiveMoney(); |....
....| [+] void: ReturnChange(); |....
....| [+] FastFoodTerminal: TurnOn(); <<static>> |....
....+-------------------------------------------------+....
...........................................................
Trong ví dụ này, "TurnOn() "là một phương thức tĩnh trả về, một cá thể (đối tượng) của lớp" FastFoodTerminal ".
Bạn đã sử dụng cái gì để tạo biểu đồ ascii đó? –
@Petur Tôi sử dụng http://asciiflow.com/ cho sơ đồ lớp, sau đó chỉnh sửa chúng bằng trình chỉnh sửa văn bản. – umlcat
- 1. Làm thế nào để kéo dài tuổi thọ của biểu đồ trình tự trong Dia?
- 2. Trình bày một lớp như một dict hoặc danh sách
- 3. Làm thế nào để gọi một hành động trong khi trình chiếu powerpoint theo trình tự?
- 4. Cách trình bày các cuộc gọi trong cùng một lớp bằng cách sử dụng sơ đồ UML-Sequence
- 5. Làm thế nào để bạn sử dụng Mô hình Trình bày với Biểu mẫu Web?
- 6. Có một hàm khởi tạo tĩnh hoặc trình khởi tạo tĩnh trong Python không?
- 7. Cách trình bày tên lớp trong LaTeX?
- 8. Làm cách nào để biểu diễn câu lệnh if trên biểu đồ trình tự trong DIA?
- 9. Làm cách nào để tạo biểu đồ cuộc gọi phân tích tĩnh cho Perl?
- 10. Làm thế nào để hiển thị điều kiện "if" trên biểu đồ trình tự?
- 11. Làm thế nào để trình bày các tính năng của hàm tổng hợp (NULL)?
- 12. Làm thế nào để gọi hàm tạo bên trong lớp?
- 13. Trình bày cây nối tiếp
- 14. Biểu đồ này được gọi là gì? Làm thế nào để tái tạo nó trong một trình duyệt web?
- 15. Làm cách nào để liên kết khóa với "hàm được trình bày bằng chuỗi khóa sau"?
- 16. Làm thế nào để thể hiện một cuộc gọi được thực hiện trong một vòng lặp trong một biểu đồ trình tự?
- 17. Làm thế nào để tạo biểu đồ phụ thuộc chương trình cho chương trình C?
- 18. Doxygen để ghi lại tất cả các hàm trong một lớp có biểu đồ cuộc gọi?
- 19. Làm cách nào để tự động gọi hoặc gọi một lớp trong Rails?
- 20. Làm cách nào để trình bày JSON của một lớp Java?
- 21. PHP - tự, tĩnh hoặc $ this trong chức năng gọi lại
- 22. Làm thế nào để gọi phương thức tĩnh trong PowerShell
- 23. Tạo biểu đồ cuộc gọi tĩnh cho hạt nhân Linux
- 24. lược đồ xsd không được trình bày bởi wsdl
- 25. Làm cách nào để trình bày tham số chung trong phương pháp UML?
- 26. Gọi trình khởi tạo tĩnh lần nữa
- 27. Làm thế nào để tạo một bean Spring từ một hàm tạo lớp bên trong tĩnh?
- 28. Bạn sẽ trình bày dữ liệu 3D sau đây như thế nào trong Matplotlib hoặc Mayavi?
- 29. Làm thế nào để định dạng một khối mã trong một bản trình bày?
- 30. Làm thế nào để vẽ tự gọi trong Dia?
[UML 2 Chuỗi Sơ đồ:] (http://www.agilemodeling.com/artifacts/sequenceDiagram.htm) 'Chú ý cách các nhãn đối tượng được gạch dưới, các lớp và các tác nhân không phải là' Có vẻ như lớp tĩnh hoặc gọi hàm tĩnh được biểu diễn với cùng một khuôn mẫu được cung cấp 1- phần _name_ của mẫu _name: ClassName_ phải rỗng - Nó không nên được gạch chân – bjan
Không chắc chắn, nhưng, tôi nghĩ rằng một số công cụ, ngoài ra, sử dụng các cạnh tròn cho hình chữ nhật, trong trường hợp đối tượng. – umlcat