




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第8章類和對象從簡單到復(fù)雜人類發(fā)展史,是一部從簡單到復(fù)雜,從容易到困難的探索歷史以交通工具的生產(chǎn)制作為例說明。任何一個合格的木匠都能獨立制作一輛馬車。復(fù)雜的交通工具再優(yōu)秀的工程師都無法獨立生產(chǎn)一輛汽車甚至一輛自行車。那該怎么辦呢?采用面向?qū)ο蟮脑O(shè)計思想對問題的表述從簡到繁單個變量:反映無關(guān)聯(lián)的屬性
inta,b,c;變量的集合數(shù)組:反映同類型相關(guān)屬性inta[10],b[20];結(jié)構(gòu)體:反映相關(guān)屬性,可以描述較復(fù)雜的事物的屬性(不同類型)Structstudent{
intid;charname[20];
floatscore[5];};問題一:對變量的操作是另外定義的,與變量定義分離。問題二:對于復(fù)雜系統(tǒng)的描述,將有大量屬性數(shù)據(jù)及其相關(guān)操作,數(shù)據(jù)與操作之間的對應(yīng)關(guān)系也十分復(fù)雜屬性與操作的集合--在一個類型中定義屬性,同時定義與這些屬性相關(guān)的操作問題三:對客觀世界的描述,總是屬性(數(shù)據(jù))與性能(動作)相聯(lián)系的,在計算機(jī)內(nèi)部如何表達(dá)?類“時鐘”類的定義classClock{private:
inthour,minute,second;public:
voidSettime(inth,intm,ints) { hour=h;minute=m;second=s; }
voidGettime(int&h,int&m,int&s) { h=hour;m=minute;s=second; }};從外界對時鐘設(shè)置時間,比如鐘表背面的設(shè)置按鈕外界獲取時鐘的時間,比如鐘表正面的表盤8.1面向?qū)ο蟪绦蛟O(shè)計方法概述對象對象的兩個要素:靜態(tài)特征:屬性;考慮汽車有哪些屬性?動態(tài)特征:行為;考慮汽車有哪些行為?一個系統(tǒng)的多個對象之間通過消息相互聯(lián)系??紤]行駛到路口的汽車考到紅燈這個信號(消息)時會產(chǎn)生什么樣的行為?注意:汽車是一個大的對象,它是由許多更小的對象組成的,如,發(fā)動機(jī)、地盤、輪子等。封裝與信息隱蔽考慮一臺電視機(jī),它里面的結(jié)構(gòu)和工作原理我們知道嗎?對普通的人來說,需要知道嗎?封裝的含義:將有關(guān)的數(shù)據(jù)和操作代碼封裝在一個對象中,形成一個基本的單位,各個對象之間相對獨立,互不干擾。將對象中某些部分對外隱蔽,即隱蔽其內(nèi)部細(xì)節(jié),只留下少量接口,以便與外界聯(lián)系,接受外界的消息。電視機(jī)的接口抽象什么是汽車?把具有輪子,能滾動前進(jìn)的陸地交通工具統(tǒng)稱為“車子”。再進(jìn)一步,把用汽油發(fā)動機(jī)驅(qū)動的車子抽象為“汽車”,把用馬拉的車子抽象為“馬車”,用腳蹬的車子抽象為腳踏車。具有某些相同的屬性和行為類與對象:類是對象的抽象,對象是類的特例,是類的具體表現(xiàn)形式。人小李小周…抽象的概念具體的人繼承與重用現(xiàn)代工業(yè)高效的重要原因:重用性,一件工業(yè)產(chǎn)品的生產(chǎn)通常都不是從零開始的,總是盡可能利用前有的成果。那么軟件產(chǎn)品呢,是不是也可以實現(xiàn)重用?怎么實現(xiàn)呢?重用要通過繼承機(jī)制來實現(xiàn)。繼承車子馬車汽車腳踏車多態(tài)性考慮,停在路口的汽車和馬車,當(dāng)看到左轉(zhuǎn)向的信號燈由紅燈變?yōu)榫G燈時,分別拐向機(jī)動車道和非機(jī)動車道。多態(tài)性:由繼承而產(chǎn)生的相關(guān)的不同的類,其對象對同一消息會作出不同的響應(yīng)。8.1.2面向?qū)ο蟪绦蛟O(shè)計的特點面向過程程序設(shè)計:圍繞功能,面向函數(shù);面向?qū)ο蟪绦蛟O(shè)計:圍繞對象的設(shè)計,面向?qū)ο?;面向?qū)ο蟪绦蛟O(shè)計,程序設(shè)計者的任務(wù):設(shè)計所需的各種類和對象,即決定把哪些數(shù)據(jù)和操作封裝在一起;考慮怎樣向有關(guān)對象發(fā)送消息,以完成所需的任務(wù)。8.1.3類和對象的作用基于對象:Object-Based,以類和對象為基礎(chǔ),程序的操作時圍繞對象進(jìn)行的。面向?qū)ο螅篛bject-Oriented,在基于對象的基礎(chǔ)上,利用繼承機(jī)制和多態(tài)性,實現(xiàn)重用性。類是所有面向?qū)ο蟮恼Z言的共同特征,所有面向?qū)ο蟮恼Z言都提供了這種類型一個有一定規(guī)模的C++程序是由許多類所構(gòu)成的一個有一定規(guī)模的C++程序在執(zhí)行時表現(xiàn)為許多相關(guān)的對象相互之間的作用8.2類的聲明和對象的定義8.2.1類和對象的關(guān)系類與對象的關(guān)系如同結(jié)構(gòu)體類型與結(jié)構(gòu)體變量的關(guān)系。具體來說,就是:類是對象的抽象,而對象是類的具體實例。類是抽象的,不占用內(nèi)存,而對象是具體的,占用存儲空間。人小李小周…抽象的概念具體的人8.2.2聲明類類型類聲明方法及例子如下:classClock{private:
inthour,minute,second;public:
voidSettime(inth,intm,ints) { hour=h;minute=m;second=s; }
voidGettime(int&h,int&m,int&s) { h=hour;m=minute;s=second; }};在類里包含了數(shù)據(jù)成員和操作數(shù)據(jù)成員的成員函數(shù),實現(xiàn)了把數(shù)據(jù)和操作封裝在一起。成員訪問限定符,如不指定,則默認(rèn)為private類類型的聲明,一般形式如下:
class
類名{
private:私有的數(shù)據(jù)和成員函數(shù);
public:公用的數(shù)據(jù)和成員函數(shù);
protected: 保護(hù)的數(shù)據(jù)和成員函數(shù);};
inthour;intminute;intsecond;DoorSettimeGettimehour,minute,secondprivatememberhourminutesecond成員訪問限定符public:既可以被本類中的成員函數(shù)訪問,也可以被類的作用域內(nèi)的其他函數(shù)訪問。private:只能被本類中的成員函數(shù)訪問,在類外(友元類例外,第9章)不能被訪問。(注意理解類外的含義)protected:不能被類外訪問,但可以被派生類的成員函數(shù)訪問。成員訪問限定符的聲明次序是任意的。請分析以下例子中各成員的訪問屬性。classClock{private:
inthour;
intminute;
intsecond;…};classClock{
inthour;private:
intminute;
intsecond;…};classClock{
inthour;public:
intminute;
intsecond;…};classClock{private:inthour;intminute;public:intsecond;…};classClock{public:
inthour;private:
intminute;public:
intsecond;…};classClock{private:
inthour,minute,second;public:
voidSettime(inth,intm,ints) {hour=h;minute=m;second=s;}
voidGettime(int&h,int&m,int&s) {h=hour;m=minute;s=second;}};私有成員,只有類內(nèi)部定義的函數(shù)可以訪問。公有成員,類內(nèi)部、外部定義的函數(shù)都可以調(diào)用。注意理解“類外”的含義voidmain(){ Clockck;
inth,m,s; ck.Settime(8,15,23);//ck.hour=8;有語法錯誤嗎? ck.Gettime(h,m,s); cout<<"Time:"<<h<<":"<<m<<":"<<s<<endl;}main()相對于Clock類是“外部”的,不能直接訪問Clock內(nèi)的私有成員,但可以通過調(diào)用Clock定義的公有函數(shù),實現(xiàn)對Clock私有成員的設(shè)置與數(shù)據(jù)獲取。理解“類的作用域”voidmain(){ClockCk1;//undeclaredidentifierCk1.Settime(8,12,56);}classClock{private: …public: …};//clock.hclassClock{private: …public: …};//main.cpp#include“clock.h”voidmain(){ClockCk1;//undeclaredidentifierCk1.Settime(8,12,56);}要把頭文件clock.h包含進(jìn)來Clock類的聲明必須出現(xiàn)在使用之前理解類內(nèi)部的作用域類是一個自成一體的“小世界”,其中的標(biāo)識符(包括數(shù)據(jù)成員和成員函數(shù))作用范圍是類內(nèi)部:類中的成員可以訪問同一類的其它成員;類內(nèi)部成員函數(shù)中定義的局部變量可以屏蔽同名的數(shù)據(jù)成員;classA{private:
intx,y;public:
voidf() {
intx;...//A::x被屏蔽 }};8.2.3定義對象的方法與使用結(jié)構(gòu)體類型定義結(jié)構(gòu)體變量類似//方法一classClock{private: …public: …};classClockCk1,Ck2;//方法二classClock{private: …public: …}Ck1,Ck2;//方法三class{private: …public: …}Ck1,Ck2;關(guān)于對象數(shù)據(jù)成員的初始化注意:與結(jié)構(gòu)體變量初始化不同的是不能在定義對象時對對象的私有數(shù)據(jù)成員用直接賦值的形式進(jìn)行初始化。對對象的私有成員的初始化要使用構(gòu)造函數(shù)(第9章)來實現(xiàn)。classClock{private: …public: …};classClock=(10,8,24);//錯誤使用對象(及其成員)使用對象的成員(包括數(shù)據(jù)成員和成員函數(shù))方法,使用成員運算符:對象.成員Clockck1,ck2;ck1.Settime(9,23,42);inthh,mm,ss;ck1.Gettime(hh,mm,ss);給對象ck1中的私有數(shù)據(jù)成員hour,minute,second賦值獲取對象ck1中的私有數(shù)據(jù)成員hour,minute,second的數(shù)據(jù)通過調(diào)用類的公有成員函數(shù)訪問類中的私有成員。函數(shù)參數(shù)傳遞使用哪種方式?8.2.4類和結(jié)構(gòu)體類型的異同在C++里,從功能上說,類類型和結(jié)構(gòu)體類型完全一樣(在結(jié)構(gòu)體里也可以定義函數(shù)),在C++保留結(jié)構(gòu)僅僅是為了與C語言兼容。用struct聲明的類和用class聲明的類的區(qū)別:用struct聲明的類,其成員訪問屬性默認(rèn)為public,用class聲明的類,其成員訪問屬性默認(rèn)為private。一般來說,對簡單的類(不包含成員函數(shù)),用struct來定義,反之,用class來定義。//沒有對成員的訪問屬性//做顯式聲明,默認(rèn)為publicstructStudent{intnum;
charname[20];charsex;
voiddisplay(){cout<<num<<endl;cout<<name<<endl;cout<<sex<<endl;}}//沒有對成員的訪問屬性//做顯式聲明,默認(rèn)為privateclassStudent{intnum;
charname[20];
charsex;
voiddisplay(){cout<<num<<endl;cout<<name<<endl;cout<<sex<<endl;}}8.3類的成員函數(shù)8.3.1成員函數(shù)的性質(zhì)接口函數(shù):需要被外界調(diào)用的成員函數(shù),必須設(shè)置為public;工具函數(shù):只被類中其他函數(shù)調(diào)用,不被外界調(diào)用,一般來說應(yīng)該設(shè)置為private;接口函數(shù)與工具函數(shù)classClock{private:
inthour,minute,second; voidjudge(){
if(hour>23||hour<0)hour=0;
if(minute>59||minute<0)minute=0;
if(second>59||second<0)second=0; }public:
voidSettime(inth,intm,ints) {hour=h;minute=m;second=s;judge();}
voidGettime(int&h,int&m,int&s) {h=hour;m=minute;s=second;}};工具函數(shù),只被Settime()函數(shù)調(diào)用8.3.2在類外定義成員函數(shù)成員函數(shù)可以直接在類里定義,也可以先在類里聲明,然后在類外定義。classClock{private:
inthour,minute,second;public:
voidSettime(inth,intm,ints) {hour=h;minute=m;second=s;}
voidGettime(int&h,int&m,int&s);//聲明};void
Clock::Gettime(int&h,int&m,int&s)//定義{h=hour;m=minute;s=second;}作用域運算符:優(yōu)先級最高作用域運算符正確使用作用域運算符:在類內(nèi)部聲明和定義成員函數(shù)時不需要加作用域運算符;在類外部定義類的成員函數(shù)時,需要加作用域運算符;如果在外部定義函數(shù)時加了作用域運算符::,但在前面沒有加類名,或者既無類名又無作用域運算符,定義的都是普通的全局函數(shù),如:::display()或display()8.3.3inline成員函數(shù)P97內(nèi)置函數(shù)(inline函數(shù))提出原因:函數(shù)調(diào)用開銷(保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場)比較大。適用范圍:代碼簡單且頻繁調(diào)用的函數(shù)。(現(xiàn)在的編譯系統(tǒng)已經(jīng)能夠識別這類函數(shù)并自動將函數(shù)設(shè)置為內(nèi)置函數(shù),并不取決與用戶是否將函數(shù)聲明為內(nèi)置。)實現(xiàn)方法:在編譯時直接將內(nèi)置函數(shù)的代碼嵌入到函數(shù)調(diào)用處。inta[1000],b[1000];…for(inti=1,sum=0;i<1000;i++) sum+=max(a[i],b[i]);intmax(inta,intb){
if(b>a)returnb;
else
returna;}類的成員函數(shù)的內(nèi)置處理出發(fā)點:也是為了減小時間開銷。處理方法:對于在類里面定義的成員函數(shù),默認(rèn)為內(nèi)置函數(shù),因此inline可以省略對于在類外面定義的成員函數(shù),并不默認(rèn)為inline函數(shù),必須顯式地說明。inline
voidClock::Gettime(int&h,int&m,int&s){ h=hour;m=minute;s=second;}8.3.4成員函數(shù)的存儲方式聲明類之后,用類去定義對象,編譯系統(tǒng)要為對象分配存儲空間。分配方法一:每定義一個對象,分別為該對象的數(shù)據(jù)和函數(shù)代碼分配存儲空間。缺點:浪費存儲空間。(不采用)Ck1.Settime()Ck1.Gettime()Ck1.hourCk1.minuteCk1.secondCk2.Settime()Ck2.Gettime()Ck2.hourCk2.minuteCk2.second…Ck10.Settime()Ck10.Gettime()Ck10.hourCk10.minuteCk10.second注意到:同一個類的每個對象數(shù)據(jù)值不相同,但成員函數(shù)的代碼是完全一樣的。方法二:只用一段存儲空間來存儲同一個類不同對象的成員函數(shù)代碼,在調(diào)用各對象的函數(shù)時,都去調(diào)用這個共用的函數(shù)代碼。對象的數(shù)據(jù)成員存儲在程序數(shù)據(jù)區(qū)對象的函數(shù)成員統(tǒng)一存儲在程序代碼區(qū)Settime()Gettime()Ck1.hourCk1.minuteCk1.secondCk2.hourCk2.minuteCk2.secondClockck1,ck2;//用sizeof()測試問題:當(dāng)調(diào)用成員函數(shù)時,成員函數(shù)怎么知道當(dāng)前操作的是哪個對象的數(shù)據(jù)?Clockck1,ck2;……Ck1.Settime(10,34,23);Ck2.Settime(23,12,54);Settime()Gettime()Ck1.hourCk1.minuteCk1.secondCk2.hourCk2.minuteCk2.second調(diào)用(10,34,23)調(diào)用(23,12,54)使用哪一套?需要有一個參數(shù)來表示當(dāng)前操作的是哪個對象this指針this指針(P281)在對象調(diào)用成員函數(shù)時,除了傳遞函數(shù)參數(shù)外,還傳遞一個隱含的指針--this指針,指向?qū)ο蟊旧?。?dāng)調(diào)用ck1的成員函數(shù),this指針就指向ck1,當(dāng)調(diào)用ck2的成員函數(shù),this指針就指向ck2。在成員函數(shù)中,所有對數(shù)據(jù)成員的訪問都會(隱含地)加上一個this指針:hour this->hourminutethis->minutesecondthis->secondclassClock{private:
inthour,minute,second;public:
voidSettime(inth,intm,ints) { this->hour=h; this->minute=m; this->second=s;}
voidGettime(int&h,int&m,int&s);//聲明};void
Clock::Gettime(int&h,int&m,int&s)//定義{h=hour;m=minute;s=second;}classClock{private:
inthour,minute,second;public:
voidSettime(inth,intm,ints) { hour=h; minute=m; second=s;}
voidGettime(int&h,int&m,int&s);//聲明};void
Clock::Gettime(int&h,int&m,int&s)//定義{h=hour;m=minute;s=second;}Settime()Ck1.hourCk1.minuteCk1.secondCk2.hourCk2.minuteCk2.second調(diào)用(10,34,23,this(ck2))調(diào)用(23,12,54,this(ck1))……Ck1.Settime(23,12,54);Ck2.Settime(10,34,23);8.4對象成員的引用通過對象名和成員運算符訪問對象中的成員通過指向?qū)ο蟮闹羔樤L問對象中的成員通過對象的引用變量訪問對象中的成員例如:stud1.num=1001;//假設(shè)num已定義為公用的整型數(shù)據(jù)成員例如:class
Time{public://數(shù)據(jù)成員是公用的
inthour;
intminute;};Timet,*p;//定義對象t和指針變量pp=&t;//使p指向?qū)ο髏cout<<p->hour;//輸出p指向的對象中的成員hour例如:class
Time{public://數(shù)據(jù)成員是公用的
inthour;
intminute;};Timet1;//定義對象t1Time&t2=t1;//定義Time類引用變量t2,并使之初始化為t1cout<<t2.hour;//輸出對象t1中的成員hour說明:同一類型的對象可整體賦值,但使用要慎重(P291介紹對象拷貝)。intmain(){ClockCk1,Ck2;Ck1.Settime(8,12,20);Ck2=Ck1;//請慎重使用
inth,m,s;Ck2.Gettime(h,m,s);cout<<"hour:"<<h<<"minute:"<<m<<"second:"<<s<<endl;
return0;}8.5類的封裝性和信息隱蔽面向?qū)ο蟪绦蛟O(shè)計方法中,封裝性和信息隱蔽的目的:為保證安全性,盡可能不讓類外的函數(shù)直接使用類的數(shù)據(jù)成員;為保密起見,盡可能不公開成員函數(shù)的代碼;為使用方便和減小開銷,在使用類時只需加載盡可能少的文件,和避免重復(fù)加載。實現(xiàn)的原則:公用接口和私有實現(xiàn)的分離類聲明和成員函數(shù)定義的分離8.5.1公用接口與私有實現(xiàn)的分離一般把類的數(shù)據(jù)成員設(shè)置為私有,不允許外界直接訪問數(shù)據(jù)成員,公用成員函數(shù)充當(dāng)使用類的公用接口。公用成員函數(shù)的代碼一般是不公開的,其中實現(xiàn)的細(xì)節(jié)是隱蔽的,稱為私有實現(xiàn)。
inthour;intminute;intsecond;DoorSettimeGettimehour,minute,secondprivatememberhms8.5.2類聲明和成員函數(shù)定義的分離出發(fā)點:把類的聲明和成員函數(shù)的實現(xiàn)分別放在不同的文件里。頭文件的處理:如果在程序中需要使用到該類,只要把頭文件包含進(jìn)來就可以了。實現(xiàn)文件的處理:編譯成目標(biāo)文件一次性加載進(jìn)來。//student.hstructStudent{public:
voiddisplay();private:
intnum;
charname[20];
charsex;}//student.cpp#include<iostream>#include"student.h“usingnamespacestd;voidStudent::display(){cout<<"num:"<<num<<endl;cout<<"name:"<<name<<endl;cout<<"sex:"<<sex<<endl;}//main.cpp#include<iostream>#include"student.h"usingnamespacestd;voidmain(){Studentstud;stud.display();
return0;}使用類的接口文件包含預(yù)處理中,用尖括號(<>)和雙撇號(“”)的區(qū)別(P130):用尖括號:編譯系統(tǒng)到系統(tǒng)目錄中尋找要包含的文件。系統(tǒng)目錄就是安裝C++系統(tǒng)的目錄。雙撇號:編譯系統(tǒng)先到指定目錄中去找要包含的文件,如果沒有指定目錄,則在當(dāng)前目錄下找;如果找不到,再到系統(tǒng)目錄下去找。//main.cpp#include<iostream>#include<student.h>//錯誤voidmain(){Studentstud;stud.display();return0;}類庫類庫:把若干個常用的功能相近的類聲明集中在一起,形成類庫。C++編譯器提供的標(biāo)準(zhǔn)類庫;如標(biāo)準(zhǔn)輸入流對象cin就是在標(biāo)準(zhǔn)類庫中定義的。還有常用的數(shù)學(xué)函數(shù)也是由標(biāo)準(zhǔn)類庫提供的,其聲明在math.h頭文件中給出。用戶根據(jù)自己的需要或出于商業(yè)的目的開發(fā)的用戶類庫,稱為自定義類庫。8.5.3對象、方法、消息類的成員函數(shù):方法調(diào)用成員函數(shù)的程序語句:消息inth,m,s;Ck1.Gettime(h,m,s);給對象Ck1發(fā)出一個消息,通知它執(zhí)行其中的Gettime方法,得到其私有成員hour,minute,second,保存到變量h,m,s里。8.6類和對象的簡單應(yīng)用舉例書上的例子例8.1,類Time不含函數(shù)成員。例8.2程序(a):多個Time對象,在主函數(shù)中依次對其成員進(jìn)行賦值,然后輸出;程序(b):在主函數(shù)中定義set_time函數(shù),實現(xiàn)對Time對象成員的賦值,定義show_time函數(shù),實現(xiàn)輸出Time對象的成員;程序(c):set_time函數(shù)改為通過參數(shù)實現(xiàn)對Time對象成員的賦值,并且是默認(rèn)參數(shù)。例8.3,用含成員函數(shù)的Time類實現(xiàn)例8.2例8.4,用類的方法實現(xiàn)找出一個整數(shù)數(shù)組中的元素的最大值。課后習(xí)題6需要求3個長方體的體積,請編寫一個基于對象的程序。對象的數(shù)據(jù)成員包括length,width,height。要求用成員函數(shù)實現(xiàn)以下功能:由鍵盤分別輸入3個長方體的長、寬、高;計算長方體的體積;輸出3個長方體的體積。分析:類的3個數(shù)據(jù)成員都是私有的;成員函數(shù)get_value實現(xiàn)從鍵盤上輸入3個成員數(shù)據(jù);成員函數(shù)volume實現(xiàn)計算長方體的體積;成員函數(shù)display實現(xiàn)輸出長方體的體積;classBox{public:
voidget_value();
floatvolume();
voiddisplay();private:
floatlengh,width,height;};voidBox::get_value(){cout<<"pleaseinputlengh,width,height:";cin>>lengh;cin>>width;cin>>height;}floatBox::volume(){return(lengh*width*height);}voidBox::display(){cout<<volume()<<endl;}intmain(){Boxbox1,box2,box3;box1.get_value();cout<<"volmueofbax1is";box1.display();box2.get_value();cout<<"volmueofbax2is";box2.display();box3.get_value();cout<<"volmueofbax3is";box3.display();
return0;}改進(jìn):再定義一個成員,記錄長方體的體積classBox{public:
voidget_value();
floatvolume();
voiddisplay();private:
floatlengh,width,height;
floatvol;};voidBox::get_value(){cout<<"pleaseinputlengh,width,height:";cin>>lengh;cin>>width;cin>>height;}floatBox::volume(){vol=lengh*width*height;}voidBox::display(){cout<<vol<<endl;}Person類新建控制臺工程(Win32ConsoleApplication)頭文件person.h#include<iostream.h>#include<string.h>classPerson{private:
charName[20];
unsignedAge;
charSex;public:
voidRegister(constchar*,int,char);//為數(shù)據(jù)成員賦值
voidGetName(char*na) //取得數(shù)據(jù)成員Name {strcpy(na,Name);};
intGetAge() //取得數(shù)據(jù)成員Age {return(Age);};
charGetSex(); //取得數(shù)據(jù)成員sex {return(Sex);
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- MySQL、SQLServer等主流數(shù)據(jù)庫面試題
- 三農(nóng)種植知識培訓(xùn)課件
- 女朋友給男朋友的檢討書
- 大班數(shù)學(xué)教案學(xué)習(xí)二等分
- 大班下冊社會教案
- 大學(xué)生自我評價參考
- 中職舞蹈面試常見問題及答案解析
- 大學(xué)校長畢業(yè)典禮講話稿
- 難點詳解江蘇省新沂市中考數(shù)學(xué)真題分類(勾股定理)匯編定向訓(xùn)練試卷(含答案詳解)
- 三會一課情景模擬課件
- 私募薪酬管理辦法
- 2025年急診三基考試題庫及答案
- 2025貴州航空產(chǎn)業(yè)城集團(tuán)股份有限公司旗下子公司貴州安立航空材料有限公司招聘61人筆試歷年參考題庫附帶答案詳解
- 軍人休假規(guī)定管理辦法
- 2025秋人教版英語八年級上Unit 2 全單元聽力材料文本及翻譯
- DB11-T 1455-2025 電動汽車充電基礎(chǔ)設(shè)施規(guī)劃設(shè)計標(biāo)準(zhǔn)
- 2025年貴州省中考英語真題含答案
- T/CBMCA 039-2023陶瓷大板巖板裝修鑲貼應(yīng)用規(guī)范
- 全套教學(xué)課件《工程倫理學(xué)》
- GB 18613-2020 電動機(jī)能效限定值及能效等級
- 高一研究性課題
評論
0/150
提交評論