自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

解析Java中UML接口實現

開發(fā) 架構
UML統(tǒng)一建模語言相信大家應該有所了解,那么UML接口的概念你是否熟悉,這里就向大家簡單介紹一下UML接口的一些內容,希望本文的介紹對你有所幫助。

本節(jié)和大家一起學習一下UML接口,UML中的接口是一種實現繼承的形式,但這種繼承形式與Java中通過關鍵詞extends實現的繼承有所不同。下面我們就來一起看一下UML接口的詳細介紹吧。

UML接口

Java編程語言中接口(Interface)的概念也能夠與UML概念匹配。UML中的接口是一種實現繼承的形式,但這種繼承形式與Java中通過關鍵詞extends實現的繼承有所不同。

在Java中,extends關鍵詞描述了一種繼承形式,它既繼承接口也繼承行為。這種類型的繼承有時被稱為Sub-classing。與其他的面象對象編程語言不同,Java類只能從一個類繼承。許多時候,設計UML圖的人熟悉多種編程語言,常常會引入多重繼承的思想,例如C++的多重繼承思想。從已有的Java代碼生成UML圖(這個過程稱為反向工程)不會帶來多重繼承的問題,但如果要求一個Java程序員去實現一個帶有多重繼承的UML類圖,就會出現問題。如果多重繼承中的超類是純抽象類,這部分類可以用Java的接口來描述,但是,如果只做這種轉換不足以把UML類圖中的多重繼承全部轉換成單重繼承,這時就必須修改UML類圖重新建模了。

雖然Java不支持C++之類語言那樣的多重繼承,但它支持實現多重UML接口。這種由Java關鍵詞implements聲明的繼承只繼承接口,這種繼承有時被稱作Sub-typing。在UML中,實現接口的類與接口定義之間的關系叫做Realization關系,用一個虛線封閉箭頭表示,從實現接口的類指向UML接口。接口本身的UML圖與普通類一樣,但它的名字上面要加上“<>”。圖四由圖一修改而成,Payment類被一個接口取代。(關于Realization名稱的說明:Realization最常見的中文譯名是“實現”。但是,Java的implements也叫做“實現”。為避免混淆,本文中凡是出現Realization的地方一律直接使用英文)。

Java中UML接口可以從一個或者多個其他接口擴展。UML一般化關系(實線封閉箭頭)可用來描述這種關系,如圖五所示。
UML還支持另一種接口符號,即用圓圈表示接口(加上連線之后就成了棒棒糖的樣子),但這種表示法多用于UML組件圖,在UML類圖中比較少見。
如果UML圖規(guī)模較大,有大量的類實現一個常用接口,整個UML圖可能亂成一團糟?!禞avaDesign》一書提出了一種簡化方法,后來又被《StreamlinedObjectModeling》一書的作者采用,這就是在實現接口的類中,用接口的名字替代從接口繼承的方法,不過這不屬于標準方法。遺憾的是,目前似乎還沒有工具支持這種轉換。


結束語:繼承和接口是Java語言中非常有用的機制,我們已經看到,可以用UML的一般化和Realization關系使得Java的這兩個概念可視化。另外,一些非標準化的表示方法能夠極大地簡化UML圖。在下一篇文章中,我們將了解如何在Java程序中保留無法直接表達的UML語義信

【編輯推薦】

  1. Java與UML交互圖
  2. UML中各種UML圖形的建立步驟簡明介紹
  3. 實例講解UML面向對象分析設計
  4. 教你繪制整潔的UML圖
  5. UML面向對象建模中四種常見開發(fā)模式
責任編輯:佚名 來源: csdn.net
相關推薦

2010-07-08 10:28:51

UML接口

2021-05-14 06:15:48

SpringAware接口

2017-08-22 16:40:22

前端JavaScript接口

2010-01-26 09:50:30

C++接口

2009-11-09 16:57:05

WCF托管特性

2010-07-02 10:25:50

UML模型圖

2010-07-08 10:33:34

UML接口

2009-07-06 17:36:06

ResultSetJDBC Connec

2021-06-03 10:01:28

JDBCStatement接口

2021-06-22 10:24:22

Statement接口修改數據刪除數據

2021-05-21 10:01:01

JDBCJavaStatement接口

2010-06-18 15:15:13

UML

2010-06-11 14:46:09

UML模型

2010-06-11 10:31:19

UML部署圖

2024-05-21 08:14:59

代碼接口依賴注入

2010-06-13 10:56:13

UML文獻

2010-06-18 14:43:28

UML關系圖

2010-01-15 11:31:02

VB.NET接口實現多

2009-08-21 15:38:45

ControllerF

2010-06-13 13:13:12

UML建模
點贊
收藏

51CTO技術棧公眾號