Java工程實訓(xùn)報告_第1頁
Java工程實訓(xùn)報告_第2頁
Java工程實訓(xùn)報告_第3頁
Java工程實訓(xùn)報告_第4頁
Java工程實訓(xùn)報告_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

計算機工程學(xué)院實習(xí)報告課程名稱Java工程實訓(xùn)報告學(xué)生姓名:學(xué)號:指導(dǎo)教師:專業(yè): 班級:實習(xí)時間: 年月日目錄1面向?qū)ο蟮某绦蛟O(shè)計 面向?qū)ο蟮某绦蛟O(shè)計1.1封裝對象要有一個明確的邊界;邊界的劃分(對象各司其職、對象的粒度、對象的可重用性)具體來說:(1)屬性:私有private(提供set和get方法)在(2)方法:公開或私有public/private(3)方法聲明,然后方法實現(xiàn)。例如:以顯示器為對象,它擁有寬、高、品牌等屬性,功能為看電視、電影、顯示,所以可先創(chuàng)建屬性,然后創(chuàng)建函數(shù)(即功能),最后調(diào)用函數(shù)。 intwide; intheight; Stringpaizi; publicvoidxianshi(){ System.out.println("我可以顯示,真棒!"); }1.2構(gòu)造器(構(gòu)造方法)構(gòu)造方法是一種特殊的方法,它是一個與類同名且沒有返回值類型的方法。對象的創(chuàng)建就是通過構(gòu)造方法來完成,其功能主要是完成對象的初始化。當(dāng)類實例化一個對象時會自動調(diào)用構(gòu)造方法。構(gòu)造方法和其他方法一樣也可以重載。(1)構(gòu)造方法作用: a、構(gòu)造出來一個類的實例 b、對構(gòu)造出來個一個類的實例(對象)初始化。(2)構(gòu)造方法的名字必須與其定義的類名完全相同,沒有返回類型。(3)主要完成對象的初始化工作,構(gòu)造方法的調(diào)用是在創(chuàng)建一個對象時使用new操作進行的。(4)類中必定有構(gòu)造方法,若不寫,系統(tǒng)自動添加無參構(gòu)造函數(shù)。接口不允許被實例化,所以接口中沒有構(gòu)造方法。(5)不能被static、final、abstract修飾。(6)構(gòu)造方法在初始化對象時自動執(zhí)行,一般不能顯式地直接調(diào)用.當(dāng)同一個類存在多個構(gòu)造方法時,java編譯系統(tǒng)會自動按照初始化時最后面括號的參數(shù)個數(shù)以及參數(shù)類型來自動一一對應(yīng)。完成構(gòu)造函數(shù)的調(diào)用。(7)構(gòu)造方法分為兩種:無參構(gòu)造方法有參構(gòu)造方法(8)自定義類中,如果不寫構(gòu)造方法,java系統(tǒng)會默認(rèn)添加一個無參的構(gòu)造方法。如果寫了一個有參的構(gòu)造方法,就一定要寫無參構(gòu)造方法。 例如:以學(xué)生對象為例,學(xué)生對象具有姓名(Stringname)、年齡(intage)、性別(charsex)、地址(Stringadd)等等屬性,即需要創(chuàng)建一個無參的構(gòu)造函數(shù)和一個有參數(shù)的構(gòu)造函數(shù)來對屬性進行賦初值,然后再是各個方法(行為或功能)的實現(xiàn)。 publicPerson(){ } publicPerson(Stringname,intage,charsex){ =name; this.age=age; this.sex=sex;}1.3接口Collection<E>和Map<K,V>1.3.1接口Collection<E>(1)List<E>,其中<E>--泛型,類型控制作用,有序的、列表通常允許重復(fù)的元素、實現(xiàn)類是大小可變的動態(tài)數(shù)組,例如:List<String>。 ArrayList和LinkedList的大致區(qū)別: 1)ArrayList是實現(xiàn)了基于動態(tài)數(shù)組的數(shù)據(jù)結(jié)構(gòu),LinkedList基于鏈表的數(shù)據(jù)結(jié)構(gòu)。 2)對于隨機訪問get和set,ArrayList覺得優(yōu)于LinkedList,因為LinkedList要移動指針。 3)對于新增和刪除操作add和remove,LinedList比較占優(yōu)勢,因為ArrayList要移動數(shù)據(jù)。ArrayList<E>數(shù)組形式、放在連續(xù)的位置中、可繼承、長度可變、所有元素允許為null、適用于查找操作;LinkedList<E>常用的方法removeFirst()、removeLast()鏈表形式、可繼承、所有元素允許為null、所有操作都是按照雙重鏈接列表、適用于增刪操作。例如:List<String>list=newArrayList<String>(); list.add("孟曉軍"); list.add("王陽"); set1.add("成青懂"); List<Integer>lin=newLinkedList<Integer>(); lin.add(1); lin.add(2);(2)Set<E>無序的、不包含重復(fù)元素HashSet<E>1.3.2接口Map<K,V> 接口Map<K,V>,其中K-此映射所維護的鍵的類型(鍵值),V-映射值的類型,一個Map元素就是一個鍵值對HashMap<Object,Object>。1.4繼承 共性放到父類,特性放到子類;即子類繼承父類,其實就是一般繼承特殊。(1)關(guān)鍵字:extends

例如:CatextendsAnimal{}(2)java中一個類最多只能有一個直接的父類,即單繼承,java中要實現(xiàn)多繼承,通過接口來實現(xiàn),關(guān)鍵字。(3)父類中所有屬性和方法都能繼承給子類;父類中的私有方法不能繼承給子類。(4)不同類型的訪問權(quán)限與繼承。表1-1訪問權(quán)限與繼承類型訪問權(quán)限繼承private本類內(nèi)部不能繼承default本類+同包同包子類可以繼承protected本類+同包+不同子包可以繼承public公開可以繼承(5)super()函數(shù)的用法 a、super();調(diào)用父類的構(gòu)造方法,只能出現(xiàn)在構(gòu)造方法的第一行。 b、super.方法名;super表示父類的對象,通過它去調(diào)用父類的方法。2實例1打字游戲 在打字游戲?qū)嵗?,?chuàng)建一個WordGame類;實例要新建一個窗體,所以必須繼承一個

JFrame

對象,而且還要用到鍵盤監(jiān)聽接口KeyListener。2.1實驗步驟2.1.1JFrame創(chuàng)建 在WordGame()構(gòu)造方法中添加如下代碼,既可創(chuàng)建一個窗體: this.setUndecorated(true);//設(shè)置是否顯示邊框 this.setAlwaysOnTop(true);//設(shè)置窗口顯示在最前端 this.getContentPane().setBackground(Color.BLACK);//設(shè)置窗口內(nèi)容面板的背景色 this.setSize(400,600);//設(shè)置窗口大小 this.setLocationRelativeTo(null);//設(shè)置相對位置2.1.2創(chuàng)建面板并固定 新建一個類MyPanel作為面板,所以MyPane類需要繼承一個JPanel對象,創(chuàng)建好面板后需要在窗體中固定,即在WordGame()構(gòu)造方法聲明一個WordGamePanal對象為panal,然后調(diào)用this.add(panal);即可將面板固定到窗體中。 classMyPanelextendsJPanelimplementsSerializable{}//創(chuàng)建面板 WordGamePanalpanal=newWordGamePanal();//創(chuàng)建面板的紙張對象 this.add(panal);//固定紙張2.1.3設(shè)置鍵盤監(jiān)聽接口KeyListener 在WordGame()構(gòu)造方法中添加如下代碼,即可完成鍵盤的監(jiān)聽,這種為內(nèi)部類的實現(xiàn),鍵盤監(jiān)聽也可以使用外部類來實現(xiàn)。 this.addKeyListener(newKeyListener(){//給當(dāng)前窗口添加鍵盤監(jiān)聽事件 publicvoidkeyTyped(KeyEvente){} publicvoidkeyReleased(KeyEvente){} publicvoidkeyPressed(KeyEvente){}//實現(xiàn)需要監(jiān)聽的鍵盤按鈕 });2.1.4當(dāng)程序一啟動,就將26個字母裝載到我們的容器中(LinkList<W>) 在本包下創(chuàng)建一個W類,用來存放一個之母的屬性,并設(shè)置其get,set函數(shù)和有參數(shù)的構(gòu)造函數(shù),以及hashCode()、equals(Objectobj)和toString()函數(shù),使用快捷生成即可。2.1.5字母沿著Y軸方向下落(按照自己的速度) 創(chuàng)建一個數(shù)據(jù)對象,讓字母的各個屬性都隨機的變換,即X坐標(biāo)、字體大小、下落速度、字母顏色等等隨機變換。 publicvoidrun(){ w.setWy(w.getWy()+w.getWspeed());//字符按照自己的速度下落 if(w.getWy()>=fh){//判斷是否落到游戲界面的外部 w=null;//自動清空該字符 wp.getW();//調(diào)用創(chuàng)建字符方法創(chuàng)建一個新字符 score-=10;//減分} WP.this.repaint();//執(zhí)行重畫 }},0,100);//程序啟動立即執(zhí)行該任務(wù)并每100毫秒執(zhí)行一次2.1.6實現(xiàn)積分操作 if(w2!=null){//判斷拿到的字符對象是否為空防止出現(xiàn)空指針//判斷所按鍵的字符是否與顯示的字符相同 if((e.getKeyChar()+"").equals(words[w2.getWindex()])){//如果相同就將該字符去除并重新創(chuàng)建一個 WordGame.this.w=null; //調(diào)用自定義面板類中的創(chuàng)建一個字符的方法 wp.getW(); score+=10;//加分 WordGame.this.repaint();//執(zhí)行重畫方法}2.2實驗結(jié)果如圖2.1所示為打字游戲正常圖,如果輸入的字符與下落的字符一致,則會進行加分,如果輸入的字符與下落的字符不一致,則會進行減分操作,按空格鍵就可以結(jié)束游戲。圖2.1打字游戲運行圖3實例2彈彈球游戲 進行了前面的計時器和打字游戲的編寫,對Java編程有了更進一步的認(rèn)識了,為此完成一個彈彈球的游戲,彈彈球游戲是將前面的所講的知識全部集合在一起。在彈彈球游戲?qū)嵗?,需要?chuàng)建一個TTQGame類;實例要新建一個窗體,所以必須繼承一個

JFrame

對象,而且還要用到鍵盤監(jiān)聽接口KeyListener。3.1實驗步驟3.1.1JFrame創(chuàng)建 在TTQGame()構(gòu)造方法中添加如下代碼,既可創(chuàng)建一個窗體: this.setUndecorated(true);//設(shè)置是否顯示邊框 this.setAlwaysOnTop(true);//設(shè)置窗口顯示在最前端 this.getContentPane().setBackground(Color.BLACK);//設(shè)置窗口內(nèi)容面板的背景色 this.setSize(400,600);//設(shè)置窗口大小 this.setLocationRelativeTo(null);//設(shè)置相對位置3.1.2創(chuàng)建面板并固定 在TTQGame類中新建一個類TTQPanel作為面板,所以TTQPanel類需要繼承一個JPanel對象,創(chuàng)建好面板后需要在窗體中固定,即在TTQGame()構(gòu)造方法中聲明一個TTQPanel對象為ttqp,然后調(diào)用this.add(ttqp);即可將面板固定到窗體中。 classTTQPanelextendsJPanelimplementsSerializable//創(chuàng)建面板 TTQPanelttqp=newTTQPanel();//創(chuàng)建面板的紙張對象 this.add(ttqp);//固定紙張3.1.3設(shè)置鍵盤監(jiān)聽接口KeyListener 在WordGame()構(gòu)造方法中添加如下代碼,即可完成鍵盤的監(jiān)聽,這種為內(nèi)部類的實現(xiàn),鍵盤監(jiān)聽也可以使用外部類來實現(xiàn)。 this.addKeyListener(newKeyListener(){//給當(dāng)前窗口添加鍵盤監(jiān)聽事件 publicvoidkeyTyped(KeyEvente){} publicvoidkeyReleased(KeyEvente){} publicvoidkeyPressed(KeyEvente){}//實現(xiàn)需要監(jiān)聽的鍵盤按鈕 });3.1.4創(chuàng)建小球?qū)ο蠛吞砑訐醢鍖ο笤赥TQGame類中創(chuàng)建小球和擋板對象,即創(chuàng)建小球的屬性和擋板的屬性,其屬性為:X,Y坐標(biāo),寬度,長度,方向,顏色等等。publicvoidpaint(Graphicsg){ super.paint(g); g.setColor(Color.BLACK); g.fillOval(bx,by,bw,bh); g.setColor(Color.RED); g.fillRect(rx,ry,200,fh-ry); }3.1.5小球運動在小球運動過程中,其運動方向為方向總共四種:right_down(右下),right_up(右上),left_down(左下),left_up(左上),如果要改變小球的運動方向,只要改變小球的坐標(biāo)即可。3.1.6球撞墻之后反彈小球在運動過程中撞墻,則會反彈,其運動約束設(shè)置為:如果球從左上下落,若碰到下壁則向右上反彈,若碰到右壁,則向左下反彈如果球從右上下落,若碰到下壁則向左上反彈,若碰到左壁,則向右下反彈如果球從左下上浮,若碰到上壁則向右下反彈,若碰到右壁,則向左上反彈如果球從右下下落,若碰到上壁則向左下反彈,若碰到左壁,則向右上反彈3.1.7小球遇到擋板后繼續(xù)反彈,否則GAMEOVER!if(by+bh>=fh-block_h){ if(bx+bw/2>=block_x&&bx+bw/2<=block_x+block_w){if(direction.equalsIgnoreCase("right_down"))//判別方向{direction="right_up";//反彈方向}else{direction="left_up";//反彈方向}}else{JOptionPane.showMessageDialog(ttqp,"GAMEOVER!","噩耗",JOptionPane.DEFAULT_OPTION);//彈出框提示游戲結(jié)束 System.exit(0);}}3.2實驗結(jié)果如圖3.1所示為彈彈球游戲正常圖,如果小球撞擊墻壁就會進行反彈操作,當(dāng)小球撞擊擋板也會進行反彈操作,如果小球下落沒有撞擊擋板,則游戲結(jié)束,按空格鍵就可以結(jié)束游戲。如圖3.1彈彈球游戲運行圖4實例3貪吃蛇游戲 在完成彈彈球游戲后,進行貪吃蛇游戲是為了掌握在彈彈球中方向的控制,其實驗步驟與彈彈球相似,首先要創(chuàng)建窗口,然后在創(chuàng)建面板,固定面板。4.1實驗步驟(1)JFrame創(chuàng)建(2)創(chuàng)建面板并固定(3)設(shè)置鍵盤監(jiān)聽接口KeyListener(4)加載數(shù)據(jù)(采用面向?qū)ο蟮乃枷?,把整條蛇作為一個大的對象,把蛇的身體元素看成多個對象)(容器請使用LinkedList)(5)讓數(shù)據(jù)對象動起來(去掉尾部添加頭部)(6)控制數(shù)據(jù)對象運動的方向(7)隨機產(chǎn)生一個豆子(8)數(shù)據(jù)對象(貪食蛇)吃豆子并長長(9)數(shù)據(jù)對象撞墻GAMEOVER(10)貪食蛇不能咬到自己的身體,貪食蛇不能180度掉頭,否在GAMEOVER。4.2實驗結(jié)果 如圖4.1和4.2所示為貪吃蛇游戲運行圖,其使用上下左右按鍵對貪吃蛇進行控制,使其能夠吃到小豆子。圖4.1貪吃蛇游戲運行圖圖4.2貪吃蛇撞墻運行圖5實例4女裝店管理系統(tǒng)(銷售信息管理模塊)5.1模塊功能描述 銷售信息管理模塊具有銷售記錄添加、銷售信息修改、銷售信息刪除、銷售信息查詢四個功能,這個模塊是為了記錄顧客在女裝店的所有消費,同時也記錄了服裝的銷售信息,這能更加方便的進行信息的管理。5.2銷售信息管理模塊ER圖 會員實體具有會員編號、賬號、密碼、性別、聯(lián)系電話、姓名等屬性;商品實體具有商品編號、名稱、尺寸、數(shù)量、顏色、價格等屬性;銷售記錄實體具有編號、銷售記錄編號、買方姓名、產(chǎn)品名稱、買賣時間、買賣數(shù)量、買賣顏色、買賣尺寸大小、買賣價格等屬性。如圖4.1所示5.3數(shù)據(jù)字典5.3.1數(shù)據(jù)項a)會員實體屬性項 根據(jù)E-R圖能夠得到會員編號、賬號、密碼、性別、聯(lián)系電話、姓名,為會員實體的基本數(shù)據(jù)項,下面給出了每個數(shù)據(jù)項的數(shù)據(jù)名稱、別名、類型長度和描述。1)數(shù)據(jù)項名稱:會員編號別名:c_id類型長度:int描述:用來存放會員的編號,其為自動增長2)數(shù)據(jù)項名稱:賬號別名:c_account類型長度:varchar(11)描述:由varchar類型來存儲,其為會員登錄賬號3)數(shù)據(jù)項名稱:密碼別名:c_password類型長度:varchar(100)描述:用來進行系統(tǒng)登錄所有4)數(shù)據(jù)項名稱:姓名別名:c_name類型長度:varchar(1000)描述:會員的名字5)數(shù)據(jù)項名稱:性別別名:sex類型長度:char(2)描述:分別為男、女6)數(shù)據(jù)項名稱:聯(lián)系電話別名:c_phone類型長度:nvarchar(100)描述:有會員的聯(lián)系電話b)商品實體屬性項 根據(jù)E-R圖能夠得到商品編號、名稱、尺寸、數(shù)量、顏色、價格為商品實體的基本數(shù)據(jù)項,下面出了每個數(shù)據(jù)項的數(shù)據(jù)名稱、別名、類型長度和描述。1)數(shù)據(jù)項名稱:會員編號別名:p_id類型長度:int描述:用來存放商品的編號,其為自動增長2)數(shù)據(jù)項名稱:名稱別名:p_name類型長度:varchar(100)描述:由varchar類型來存儲3)數(shù)據(jù)項名稱:尺寸別名:p_size類型長度:varchar(50)描述:用來存放商品的大小4)數(shù)據(jù)項名稱:數(shù)量別名:p_number類型長度:varchar(100)描述:用來存放商品的數(shù)量5)數(shù)據(jù)項名稱:顏色別名:p_color類型長度:varchar(50)描述:用來存放商品的顏色6)數(shù)據(jù)項名稱:價格別名:p_price類型長度:nvarchar(50)描述:用來存放商品的單價c)銷售記錄實體屬性項 根據(jù)E-R圖能夠得到編號、銷售記錄編號、買方姓名、產(chǎn)品名稱、買賣時間、買賣數(shù)量、買賣顏色、買賣尺寸大小、買賣價格為銷售記錄實體的基本數(shù)據(jù)項,下面出了每個數(shù)據(jù)項的數(shù)據(jù)名稱、別名、類型長度和描述。1)數(shù)據(jù)項名稱:編號別名:s_id類型長度:int描述:用來存放記錄的編號,其為自動增長2)數(shù)據(jù)項名稱:銷售記錄編號別名:s_orderid類型長度:varchar(100)描述:由varchar類型來存儲3)數(shù)據(jù)項名稱:買方姓名別名:s_cname類型長度:nvarchar(100)描述:用來存放買方姓名4)數(shù)據(jù)項名稱:產(chǎn)品名稱別名:s_pname類型長度:varchar(100)描述:用來存放產(chǎn)品名稱5)數(shù)據(jù)項名稱:買賣時間別名:s_date類型長度:varchar(50)描述:用來存放商品買賣時間6)數(shù)據(jù)項名稱:買賣數(shù)量別名:s_numbe類型長度:nvarchar(100)描述:用來存放商品的買賣數(shù)量7)數(shù)據(jù)項名稱:買賣顏色別名:s_color類型長度:nvarchar(50)描述:用來存放商品的買賣顏色8)數(shù)據(jù)項名稱:買賣尺寸大小別名:s_size類型長度:nvarchar(50)描述:用來存放買賣商品的尺寸大小9)數(shù)據(jù)項名稱:買賣價格別名:s_price類型長度:nvarchar(5)描述:用來存放買賣商品的價格5.3.2數(shù)據(jù)流1)數(shù)據(jù)流名稱:會員個人信息數(shù)據(jù)流別名:無說明:記錄會員所有的信息數(shù)據(jù)流來源:會員信息數(shù)據(jù)表數(shù)據(jù)流流向:會員自己數(shù)據(jù)流組成:編號+賬號+密碼+性別+聯(lián)系電話+姓名2)數(shù)據(jù)流名稱:商品信息說明:記錄商品所有的信息數(shù)據(jù)流來源:管理員操作數(shù)據(jù)流流向:商品信息數(shù)據(jù)表數(shù)據(jù)流組成:編號+商品名稱+商品尺寸+商品數(shù)量+商品顏色+商品價格3)數(shù)據(jù)流名稱:銷售記錄信息數(shù)據(jù)流別名:無說明:記錄商品所有的銷售記錄信息數(shù)據(jù)流來源:會員消費數(shù)據(jù)流流向:銷售記錄信息數(shù)據(jù)表數(shù)據(jù)流組成:編號+銷售記錄編號+買方姓名+產(chǎn)品名稱+買賣時間+買賣數(shù) 量+買賣顏色+買賣尺寸大小+買賣價格5.4流程圖選擇系統(tǒng)登錄,管理員輸入賬號和密碼,驗證正確后,進入系統(tǒng)。管理員選擇銷售記錄模塊,可以對所有的銷售記錄進行增加、修改、刪除、查詢等操作。如圖5.2銷售信息管理模塊流程圖5.5功能點的展示本次開發(fā)使用的是MyEclipse8.6,MySQL,JDK1.7和Tomcat6.0,我們負(fù)責(zé)的是消費記錄管理模塊,該模塊主要用到了HTML布局,Servlet,HttpServlet處理頁面請求,客戶端服務(wù)端數(shù)據(jù)的交互和Java.sql包中的DriverManager,PreparedStatedment,Connection等對象與其中的方法等知識。用到一些常用的Jsp頁面寫java代碼的技巧,比如EL表達式,<%%>和JSTL等知識,不過在EL表達式和JSTL時,不能忘了導(dǎo)入對應(yīng)的jar包。還有就是使用JDBC連接MySql數(shù)據(jù)庫,也需要使用對應(yīng)的jar包。然后就是我們這次模塊的處理邏輯,首先是查詢功能,通過單擊按鈕,然后獲得jsp頁面中文本框中的數(shù)據(jù),通過表單提取的方式發(fā)送給對應(yīng)的java類去處理,在后臺代碼的數(shù)據(jù)庫處理后,返回給客戶端一個查詢后的結(jié)果,這個結(jié)果使用table布局的方式展現(xiàn),這邊數(shù)據(jù)的讀取需要用到j(luò)stl方式,比較靈活;其中添加消費記錄也是同理,不過在插入一條消費記錄之后,還需要再一次讀取消費記錄表中的內(nèi)容,將該表的內(nèi)容返回給我們的客戶端,這樣顯得更友好一點。5.6原型展示 如圖5.3所示,是管理員的登陸界面,管理員輸入賬號、密碼和驗證碼,驗證正確后,登陸進入系統(tǒng),選擇銷售記錄模塊。如圖5.3登陸界面如圖5.4是銷售管理模塊界面,用戶可以對所有的銷售記錄進行查詢。如圖5.5是銷售管理模塊界面,用戶可以對所有的銷售記錄進行修改

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論