




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
武漢大學(xué)國際軟件學(xué)院第九章對象約束語言武漢大學(xué)國際軟件學(xué)院內(nèi)容為什么需要OCLOCL的特點(diǎn)OCL的構(gòu)成OCL的高級數(shù)據(jù)類型小結(jié)武漢大學(xué)國際軟件學(xué)院9.1為什么需要OCL對象約束語言(ObjectConstraintLanguage,OCL)作為圖形符號的補(bǔ)充,說明建模元素的有關(guān)細(xì)節(jié),例如:約束,前置條件,后置條件等。武漢大學(xué)國際軟件學(xué)院9.1為什么需要OCLOCL(objectconstraintlanguage)對象約束語言。用來進(jìn)行約束定義的,形式化的無二義的語言。OCL于1995年由Warmer等人,在IBM設(shè)計成功,并開始使用。1997年UML的1.1版本正式采用OCL2003年1月推出OCL1.4版本OCL2.0版本正在征求意見武漢大學(xué)國際軟件學(xué)院9.2OCL的特點(diǎn)聲明性語言,不會改變模型中的內(nèi)容。形式化語言語言。無二義規(guī)范語言。類型性語言,每一個表達(dá)式都有類型;易學(xué)好用。武漢大學(xué)國際軟件學(xué)院9.3OCL的構(gòu)成
OCL作為形式化語言,基本語言要素包括:類型(基本類型,高級類型)操作表達(dá)式語句武漢大學(xué)國際軟件學(xué)院9.3OCL的構(gòu)成
OCL的基本類型:包括整型,實(shí)型,字符串型,布爾型武漢大學(xué)國際軟件學(xué)院9.3OCL的構(gòu)成
OCL在基本類型上的部分運(yùn)算符武漢大學(xué)國際軟件學(xué)院解釋整型
i1+i2加法,整型(-,*)i1/i2除法,實(shí)型
i1.abs
取絕對值,整型
i1.max(i2)取最大數(shù),整型實(shí)型i1+i2加法,實(shí)型(-,*,/)i1.abs取絕對值,實(shí)型
r1.round
四舍五入取整,整型
r1.floor
向下取整,整型武漢大學(xué)國際軟件學(xué)院解釋字符串型
s1.concat(s2)連接,字符串
s1.size字符串長度,整型
s1.toLower
轉(zhuǎn)換成為小寫字母,字符串
s1.toUper
轉(zhuǎn)換成為大寫字母,字符串
s1.substring(i1,i2)取子串,字符串
s1=s2等于,布爾型武漢大學(xué)國際軟件學(xué)院解釋布爾型b1andb2邏輯與,布爾型(or,xor)notb1邏輯非,布爾型
b1=b2等于,布爾型
b1<>b2不等于,布爾型
b1impliesb2蘊(yùn)涵,布爾型當(dāng)b1和b2均為真,或b1為假時,表達(dá)式為真1ifb1then<expr1>else<expr2>endif分支判斷武漢大學(xué)國際軟件學(xué)院解釋運(yùn)算符的優(yōu)先級別優(yōu)先級決定了操作順序;優(yōu)先級從上到下,改變順序用括號。武漢大學(xué)國際軟件學(xué)院9.3OCL的構(gòu)成OCL的表達(dá)式(1)表達(dá)式的含義
OCL的表達(dá)式由操作數(shù)和運(yùn)算符按一定規(guī)則構(gòu)成。表達(dá)式和特定的上下文有關(guān),表達(dá)式具有確定的值。
(2)表達(dá)式的上下文表達(dá)式的上下文表示這個表達(dá)式所作用的范圍??梢允穷?,類的屬性和操作.context訂單--上下文為“訂單”類
context訂單.訂單和--上下文為“訂單”類的屬性“訂單和”
context訂單.求稅金()--上下文為“訂單”類的操作求“稅金()”
(3)表達(dá)式的不變量
不變量由inv關(guān)鍵字規(guī)定。上下文表示這個表達(dá)式所作用的范圍。可以是類,類的屬性和操作.context訂單inv:--”訂單”類中的所有對訂單和>10--象的”訂單和”都應(yīng)該大于10context訂單inv:--”訂單”類的”酬金”的求法酬金=0.01*訂單和也可以:context訂單inv:--”訂單”類的”酬金”的求法
self.酬金=0.01*self.訂單和
(4)表達(dá)式的前置條件和后置條件context訂單.求稅金():Realpre:--post:result=訂單和*0.065
(6)蘊(yùn)涵
context訂單inv
訂單的文章->size=0implies
訂單和=0“訂單的文章”的數(shù)量如果等于0,則“訂單”的“訂單和”也必須等于0
(7)分支
context訂單inv
酬金=if(訂單和<100)then2.00else(訂單和*0.01)endif
求“訂單”的“酬金”,如果訂單和<100,酬金為2,否則為訂單和的百分之一.
(8)導(dǎo)航
OCL可以從初始的上下文導(dǎo)航到與它有關(guān)系的其它類。這些類與初始的類有關(guān)聯(lián)或組合關(guān)系.context訂單inv
訂單客戶.age>18context客戶inv
訂單->size>=19.4OCL的高級數(shù)據(jù)類型OCL定義的高級數(shù)據(jù)類型有群,集合,袋和序列.其中群是抽象數(shù)據(jù)類型,集合,袋和序列是群的子集.
集合(set):不包含重復(fù)元素;
袋(Bag):允許包含重復(fù)元素;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高校安全警示教育課件
- 新疆生產(chǎn)建設(shè)兵團(tuán)興新職業(yè)技術(shù)學(xué)院《環(huán)境工程基礎(chǔ)實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 南京旅游職業(yè)學(xué)院《香料化學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 日照市嵐山區(qū)2025屆數(shù)學(xué)五下期末聯(lián)考模擬試題含答案
- 內(nèi)蒙古自治區(qū)烏海市第三中學(xué)2025屆初三3月份月考試卷數(shù)學(xué)試題含解析
- 吉林省松原市高中2025屆高三第四次模擬物理試題含解析
- 江蘇省百校大聯(lián)考2024-2025學(xué)年高考?xì)v史試題原創(chuàng)模擬卷(八)含解析
- 柳州職業(yè)技術(shù)學(xué)院《柔力球》2023-2024學(xué)年第一學(xué)期期末試卷
- 西京學(xué)院《植物學(xué)實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 通遼市重點(diǎn)中學(xué)2024-2025學(xué)年初三下學(xué)期實(shí)驗(yàn)班第二次月考數(shù)學(xué)試題含解析
- 中建總工程師的職業(yè)基本素養(yǎng)
- 【房地產(chǎn)項目成本控制問題研究文獻(xiàn)綜述2300字】
- 中等職業(yè)學(xué)校語文課程標(biāo)準(zhǔn)(2020年版)(word精排版)
- 《一般將來時》教學(xué)設(shè)計
- 小學(xué)數(shù)學(xué)-青島版五四制五年級數(shù)學(xué)上冊第七單元《比的意義》教學(xué)設(shè)計學(xué)情分析教材分析課后反思
- 單面彩鋼酚醛復(fù)合風(fēng)管施工工法
- 浙江省溫州環(huán)大羅山聯(lián)盟2022-2023學(xué)年高一下學(xué)期4月期中聯(lián)考物理試題
- 托管專項施工方案
- 汽車產(chǎn)品可靠性工程框架
- 風(fēng)電項目開發(fā)流程教學(xué)課件
- 泌尿外科前列腺增生一病一品
評論
0/150
提交評論