偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

實(shí)例講解Java中UML接口實(shí)現(xiàn)

開(kāi)發(fā) 架構(gòu)
本文和大家一起學(xué)習(xí)一下UML接口,UML中的接口是一種實(shí)現(xiàn)繼承的形式,但這種繼承形式與Java中通過(guò)關(guān)鍵詞extends實(shí)現(xiàn)的繼承有所不同。

本文和大家重點(diǎn)討論一下UML接口問(wèn)題,UML統(tǒng)一建模語(yǔ)言相信大家應(yīng)該有所了解,那么UML接口的概念你是否熟悉,這里就向大家簡(jiǎn)單介紹一下UML接口的一些內(nèi)容,希望本文的介紹對(duì)你有所幫助。

UML接口

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

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

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

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

結(jié)束語(yǔ):

繼承和接口是Java語(yǔ)言中非常有用的機(jī)制,我們已經(jīng)看到,可以用UML的一般化和Realization關(guān)系使得Java的這兩個(gè)概念可視化。另外,一些非標(biāo)準(zhǔn)化的表示方法能夠極大地簡(jiǎn)化UML圖。在下一篇文章中,我們將了解如何在Java程序中保留無(wú)法直接表達(dá)的UML語(yǔ)義信

【編輯推薦】

  1. 解析Java中UML接口實(shí)現(xiàn)
  2. UML構(gòu)件圖的設(shè)計(jì)步驟和應(yīng)用說(shuō)明
  3. 詳解UML公共機(jī)制中修飾和擴(kuò)展機(jī)制
  4. 解析用Visio畫(huà)UML圖的基本操作和幾種小技巧
  5. 六種UML圖關(guān)系的表示及在代碼中體現(xiàn)

 

 

責(zé)任編輯:佚名 來(lái)源: csdn.net
相關(guān)推薦

2010-06-18 15:33:19

UML接口

2010-07-08 10:33:34

UML接口

2010-06-10 11:15:18

UML實(shí)例

2010-06-29 19:08:23

UML建模技術(shù)

2010-06-11 17:44:10

UML對(duì)象圖

2017-08-22 16:40:22

前端JavaScript接口

2010-06-09 09:53:44

UML活動(dòng)圖

2010-06-30 09:07:09

UML建模分析

2010-06-30 17:57:08

UML用例建模

2010-06-18 11:28:14

2021-05-14 06:15:48

SpringAware接口

2014-01-02 10:46:35

PostgreSQLC++

2009-11-23 20:16:17

PHP接口特性

2010-04-19 08:51:30

2009-11-09 16:57:05

WCF托管特性

2010-01-26 09:50:30

C++接口

2011-12-15 10:19:55

JavaNIO

2009-07-06 17:36:06

ResultSetJDBC Connec

2010-06-18 15:15:13

UML

2021-06-03 10:01:28

JDBCStatement接口
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)