




已阅读5页,还剩152页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1,Java语言程序设计,2,第三章面向对象特征,基本概念类的定义对象类的继承和多态接口和包常用工具类,3,基本概念,什么是编程语言?人和计算机进行交流的工具和手段编程语言的发展机器语言:0101001汇编语言:mov,push,add,call第三代语言:高级语言,以C语言为代表,过程式编程语言(ProceduralProgrammingLanguage)第四代语言:非过程化/面向对象的编程语言语言的发展:抽象的过程,4,面向对象(ObjectOriented-OO)面向对象编程(ObjectOrientedProgramming-OOP)面向对象是一种软件开发的方法,“面向对象的分析与设计”(OOAvoiderase()System.out.println(Square.erase()“);classTriangleextendsShapevoiddraw()System.out.println(Triangle.draw();voiderase()System.out.println(Triangle.erase();,classShapevoiddraw()voiderase()classCircleextendsShapevoiddraw()System.out.println(Circle.draw();voiderase()System.out.println(Circle.erase();,基本概念,16,多态性,publicclassTestpublicstaticShaperandShape()switch(int)(Math.random()*3)default:case0:returnnewCircle();case1:returnnewSquare();case2:returnnewTriangle();,publicstaticvoidmain(Stringargs)Shapes=newShape9;for(inti=0;ijavacTest.javaTest.java:9:non-staticmethodprint(int)cannotbereferencedfromastaticcontextprint(x);1error,classTestpublicvoidprint(intx)System.out.println(x);publicstaticvoidmain(Stringargs)intx=3;Testt=newTest();t.print(x);,classTestpublicstaticvoidprint(intx)System.out.println(x);publicstaticvoidmain(Stringargs)intx=3;print(x);,static方法中仅仅可以调用其他static方法,类成员,37,final变量/方法final变量:定义一个常数,即变量值不能改变finaldoubleAVOGADRO=6.022e23;final类:不能有子类final方法:方法不能被重写(overriding)classChessAlgorithm.finalvoidnextMove(ChessPiecepieceMoved,BoardLocationnewLocation).,类成员变量,38,小结类:public,abstract,final,无修饰,private类成员publicprotectedprivate无修饰staticfinal,类成员变量,39,方法:对象行为的描述完成某种功能的程序块定义:访问权限修饰符方法返回类型方法名()throws异常名方法体;方法参数的传递变量的作用域方法的重载(overloading)/重写(overriding)方法的递归调用,类成员方法,40,访问控制修饰符公共访问控制符public被所有类访问默认访问控制符被同一包中其他类访问私有访问控制符private被该类自身访问保护访问控制符protected该类自身、同一个包中的其他类、其他包中的子类访问私有保护访问控制符privateprotected该类自身、所有子类访问,类成员方法的访问,41,非访问控制修符静态方法static属于类的方法最终方法final不能被子类重新定义的方法抽象方法abstract只有方法说明,没有具体实现本地方法native以其他语言实现方法功能同步方法synchronized用于多线程程序中的协调和同步,类成员方法的访问,42,例,成员方法,classTestpublicstaticvoidmain(Stringargs)doubled_product;AreamyArea;myArea=newArea();d_product=myAduct();System.out.println(“myArea的面积是:”+d_product);,classAreadoublewidth,height;voidsetV(doublew,doubleh)width=w;height=h;doubleproduct()returnwidth*height;,43,方法参数,成员方法,形参和实参,D:javaParameter343423,注意1:类型匹配注意2:基本类型与复合类型参数传递的结果不同,PassbyValueInJavamethods,argumentsarepassedbyvalue.Wheninvoked,themethodreceivesthevalueofthevariablepassedin.Whentheargumentisofprimitivetype,pass-by-valuemeansthatthemethodcannotchangeitsvalue.Whentheargumentisofreferencetype,pass-by-valuemeansthatthemethodcannotchangetheobjectreference,butcaninvoketheobjectsmethodsandmodifytheaccessiblevariableswithintheobject.,44,例,成员方法,u=3;v=2;,u=5;v=10;,输出结果:3451112131415,45,变量的作用域(成员变量/局部变量),成员方法,46,方法的重载(overload)方法名相同,但方法的参数不同方法描述方法名(标识符)参数类型方法返回值绝对值abs(a)intint绝对值abs(a)longlong绝对值abs(a)floatfloat绝对值abs(a)doubledoublepublicstaticintabs(inta)publicstaticlongabs(longa)publicstaticfloatabs(floata)publicstaticdoubleabs(doublea),成员方法,47,方法的重写(overriding)子类重写父类的方法,成员方法,classFathervoiddisplay();,classSonextendsFathervoiddisplay();,Fatherf=newFather();f.display();,Sons=newSon();s.display();,48,构造方法,创建对象/实例化对象new例1:Applea=newApple();(创建对象)例2:Applea;(对象的说明)a=newApple();(实例化对象)对象的实例化通过构造方法(constructor)来实现构造方法的名字与类名相同构造方法没有返回值构造方法可以有多个,构成方法的重载(overload),49,例:对象的实例化和初始化,输出结果:2020501020,构造方法,50,再谈方法的重载(overload),构造方法,classTreeintheight;Tree()prt(“Plantingaseeding”);height=0;Tree(inti)prt(“CreatingnewTreethatis”+i+“feettall”);height=i;,voidinfo()prt(“Treeis”+height+“feetheight”);voidinfo(Strings)prt(s+“:Treeis”+height+“feetheight”);staticvoidprt(Strings)System.out.println(s);,for(inti=0;i5;i+)Treet=newTree(i);();(“mytree”);newTree();,51,默认构造方法例classAppleintcolor;Applea=newApple();对象实例的判断:null例Applea;if(a=null)System.out.println(“Daydream”);,构造方法,运行时系统自动赋予一个空构造函数如Apple(),52,再谈构造方法,构造方法,classCmethodCmethod(booleanb)publicstaticvoidmain(Stringargs)Cmethodc1=newCmethod();Cmethodc2=newCmethod(false);,classCmethodCmethod(booleanb)publicstaticvoidmain(Stringargs)/Cmethodc1=newCmethod();Cmethodc2=newCmethod(false);,classCmethodCmethod(booleanb)Cmethod()publicstaticvoidmain(Stringargs)Cmethodc1=newCmethod();Cmethodc2=newCmethod(false);,运行时系统自动赋予一个空构造方法,仅仅当该类没定义构造方法的情况下,53,static变量的初始化,classSmemberstaticinti=100;staticbooleanb=true;charc=t;publicSmember()publicstaticvoidmain(Stringargs)Smemberm1=newSmember();Smemberm2=newSmember();,不论产生多少个对象,属于类的静态变量只有一份,即只占有一份存储空间,classSmemberstaticinti;staticbooleanb;statici=100;b=true;System.out.println(“Instaticblock”);charc=t;publicSmember()System.out.println(“Inconstructor”);publicstaticvoidmain(Stringargs)Smemberm1=newSmember();Smemberm2=newSmember();,输出结果InstaticblockInconstructorInconstructor,54,设计模式的例子,classSingletonprivatestaticSingletonme=newSingleton();publicstaticSingletongetSingleton()returnme;privateSingleton()publicstaticvoidmain(Stringargs)Singletons1=Singleton.getSingleton();Singletons2=Singleton.getSingleton();if(s1=s2)System.out.println(s1iss2);elseSystem.out.println(s1isnots2);,该Singleton类只有一个实例,即该Singleton类只能构造一个对象,55,“DesignPatterns:ElementsofReusableObject-OrientedSoftware”(设计模式)ErichGamma、RichardHelm、RalphJohnson、JohnVlissidesAddison-Wesley,1995这几位作者常被称为“四人组(GangofFour)”,而这本书也就被称为“四人组(或GoF)”书设计模式:在一定的环境中解决某一问题的方案23种设计模式,3大类创建型模式(Creationalpattern)规定了创建对象的方式,如Singleton模式、FactoryMethod模式结构型模式(Structuralpattern)规定了如何组织类和对象。这些模式涉及类如何相互继承或如何从其它类组合,如Adapter、Proxy和Decorator模式行为模式(Behavioralpattern)规定了对象之间交互的方式。如Observer模式、Strategy和Template模式并发模式(Concurrencypattern)规定协调或顺序对共享资源访问的方式MVC(Model/View/Controller,模型/视图/控制器),56,设计模式的例子,publicclassSequenceprivatestaticSequenceinstance;privatestaticintcounter;privateSequence()counter=0;publicstaticsynchronizedSequencegetInstance()if(instance=null)instance=newSequence();returninstance;publicstaticsynchronizedintgetNext()return+counter;,这个类不可以再有子类,因为构造方法是privateLazyinstantiation(Lazyinitialization),仅在需要的时候才实例化对象,privatestaticSequenceinstance=newSequence();,57,抽象类(abstractclass),一个未完成的类仅仅抽象类可以包含抽象方法(abstractmethods)抽象方法:仅仅申明了方法,但未实现有访问修饰词返回值类型方法名参数列表无方法体,58,抽象类(abstractclass),abstractclassPointintx=1,y=1;voidmove(intdx,intdy)x+=dx;y+=dy;alert();abstractvoidalert();,abstractclassColoredPointextendsPointintcolor;,classSimplePointextendsPointvoidalert(),抽象方法:有访问修饰词、返回值类型、方法名和参数列表,无方法体,59,抽象类(abstractclass),抽象类不能被实例化,例Pointp=newPoint();子类继承抽象类时,必须重写抽象方法,否则仍为抽象类,abstractclassPointintx=1,y=1;voidmove(intdx,intdy)x+=dx;y+=dy;alert();abstractvoidalert();,abstractclassColoredPointextendsPointintcolor;,classSimplePointextendsPointvoidalert(),Pointp=newSimplePoint();,60,抽象类(abstractclass),多态性,abstractclassGraphicsabstractvoidparameter();abstractvoidarea();,classRectangleextendsGraphicsdoubleh,w;Rectangle(doubleu,doublev)h=u;w=v;voidparameter()System.out.println(h+“+w);voidarea()System.out.println(h*w);,Rectanglerec=newRectangle(1.0,2.0);Circlecir=newCircle(3.0,“Red”);Graphicsg=rec,cir;for(inti=0;ig.length;i+)gi.parameter();gi.area();,classCircleextendsGraphicsdoubler;Stringc;Circle(doubleu,Stringv)r=u;c=v;voidparameter()System.out.println(r+“+c);voidarea()System.out.println(Math.PI*r*r);,运行结果1.02.02.03.0Red28.274333882308138,多态性(polymorphism),应用场合:不同子类可以用不同的方式实现同一共同接口,该共同接口建立了一个基本形式,61,第三章面向对象特征,基本概念类的定义对象类的继承和多态接口和包常用工具类,62,对象,引用对象的变量格式:对象名.变量名引用对象的方法格式:对象名.方法名例1Vectorv=newVector();v.addElement(“helloworld”);例2inta=1,2,3,4,5;intsize=a.length;例3System.out.println();,63,对象,通过对象引用对象的成员变量和成员方法,classQangleinta,h;Qangle()a=10;h=20;Qangle(intx,inty)a=x;h=y;Qangle(Qangler)a=r.width();h=r.height();voidset(intx,inty)a=x;h=y;,q1.set(30,40);q1.a=30;q1.h=40;目的相同第一方式更安全、更面向对象(数据封装)直接操纵变量,64,对象的释放,将对象从内存中清除内存的管理(枯燥、容易出错)垃圾回收(GarbageCollection)垃圾搜集器(GarbageCollector)周期性地释放不再被引用的对象,自动完成手动完成,System.gc();publicstaticvoidgc()-Runsthegarbagecollector.,TheJavaplatformallowsyoutocreateasmanyobjectsasyouwant(limited,ofcourse,bywhatyoursystemcanhandle),andyoudonthavetoworryaboutdestroyingthem.TheJavaruntimeenvironmentdeletesobjectswhenitdeterminesthattheyarenolongerbeingused.Thisprocessiscalledgarbagecollection.,65,对象的使用,访问对象的私有(private)成员通过定义一个公共方法来实现,classStudentprivateStringname;privateStringid;Student(Strings1,Strings2)name=s1;id=s2;StringgetName()returnname;voidsetName(Strings)name=s;,Studentst=newStudent(“aloha”,“001”);Stringn=st.getName();st.setName(“csma”);n=st.getName();,66,对象的使用,对象作为方法的参数访问权限修饰符方法返回类型方法名(参数)throws异常名方法体;参数:类型变量名,类型:基本数据类型/复合类型(对象)参数的传递Passbyvalue,67,例对象用作方法的参数,对象的使用,68,对象的使用,对象的访问对象作为方法的返回值访问权限修饰符方法返回类型方法名(参数)throws异常名方法体;返回类型有返回值:基本数据类型/复合类型(对象)无返回值:void,69,对象的使用,对象作为方法的返回值例:求两点坐标之间的中点坐标思路:(x1,y1)和(x2,y2)(x,y)x=(x1+x2)/2,y=(y1+y2)/2Spots1=newSpot(2,3);Spots2=newSpot(4,5);Spots=s1.midSpot(s2);,70,例对象用作方法的返回值,对象的使用,71,对象的使用,数组:类型相同的一列元素简单的数组,publicclassArrayDemopublicstaticvoidmain(Stringargs)intanArray=newint10;for(inti=0;ianArray.length;i+)anArrayi=i;System.out.print(anArrayi+);System.out.println();,72,对象的使用,对象数组,classTestpublicstaticvoidmain(Stringargs)inta=newint5;for(inti=0;ia.length;i+)System.out.println(ai);Strings=newString5;for(inti=0;is.length;i+)System.out.println(si);,System.out.println(si.length();,73,对象的使用,对象数组,classStudentprivateStringname;privateStringid;Student(Strings1,Strings2)name=s1;id=s2;StringgetName()returnname;voidsetName(Strings)name=s;voiddisplay()System.out.println(name+“”+id);,Studentst=newStudent10;for(inti=0;ist.length;i+)sti=newStudent();for(inti=0;ist.length;i+)sti.display();,74,对象的使用,对象作为另一个对象的成员变量一个对象中包含另一个对象,组合关系,classStudentprivateStringname;privateStringid;Student(Strings1,Strings2)name=s1;id=s2;StringgetName()returnname;voidsetName(Strings)name=s;,75,对象的使用,对象作为另一个对象的成员变量,classMobilePhoneprivateStringtype;privateWatchw;MobilePhone(Strings)type=s;voidsetWatch(Watcha)w=a;longgetTime()returnw.getTime();,classWatchlonggetTime()returnSystem.currentTimeMillis();,MobilePhonemp=newMobilePhone(“nokia”);Watchw=newWatch();mp.setWatch(w);longl=mp.getTime();,publicstaticlongcurrentTimeMillis()thedifference,measuredinmilliseconds,betweenthecurrenttimeandmidnight,January1,1970UTC,76,对象的使用,关键词thisthis指当前对象应用1:加强程序可读性(this可有可无),77,对象的使用,例1:Demo1.java(调用变量),classDemo1doublex,y;Demo1(doublei,doublej)this.x=i;this.y=j;doubleave()return(x+y)/2;publicstaticvoidmain(Stringargs)Demo1d=newDemo1(3,4);System.out.println(d.ave();,78,对象的使用,例2:Demo2.java(调用方法),classDemo2intx,y,z;Demo2(inta,intb)x=a;y=b;this.sort(a,b);voidsort(inta,intb)intt;if(xy)t=x;x=y;y=t,79,对象的使用,例3:Demo3.java(调用方法),classDemo3intx,y;Demo3(inta,intb)x=a;y=b;voidchange(inti,intj)x=i;y=j;this.sort();voidsort()intt;if(xy)t=x;x=y;y=t,80,对象的使用,关键词thisthis指当前对象应用2:对同一个对象执行多次方法调用,classLeafinti=0;Leafincrement()i+;returnthis;voidprint()System.out.println(“i=”+i);,Leafx=newLeaf();x.increment().increment().increment().print();,81,对象的使用,关键词thisthis指当前对象应用3:在一个构造函数中调用另一个构造函数,classFlowerStringname;intprice;Flower()this(tulip,10);Flower(Strings,inti)name=s;price=i;,voidprint()System.out.println(name+price);publicstaticvoidmain(Stringargs)Flowerf=newFlower();f.print();,82,第三章面向对象特征,基本概念类的定义对象类的继承和多态接口和包常用工具类,83,类的继承,父类与子类的关系(extends)基本内容子类可调用父类的方法和变量,子类可增加父类中没有的方法和变量子类可重新定义父类的静态/实例变量子类可重新定义父类的静态/实例方法继承中的构造方法类成员访问修饰符与继承的关系,84,类的继承,子类可调用父类的方法和变量子类可增加父类中没有的方法和变量,classVehicleStringbrand;voidsetB(Strings)brand=s;voidshowB()System.out.println(brand);,classBusextendsVehicleintgas;voidsetG(intg)gas=g;voidshowG()System.out.println(gas);,Busb=newBus();b.setB(“audi”);/*b.setG(100);b.showB();/*b.showG();,子类继承父类的方法和变量,则这些方法和变量就属于子类,则子类对象对这些方法和变量的调用是显而易见的,85,类的继承,子类可重新定义父类中已有的变量父类中同名的变量无效(隐藏)通过“super.变量名”和父类名.变量名(static变量)引用,classAinti=256,j=64;staticintk=32;finalfloate=2.718f;,classBextendsApubliccharj=x;finaldoublek=5;staticinte=321;voidshow()System.out.println(i+“+j+“+k+“+e);voidshowA()System.out.println(super.j+“+A.k+“+super.e);,Bb=newB();b.show();b.showA();,256x5.032164322.718,this.变量名this.方法名this()super.变量名super.方法名super(),super?当前对象/当前对象的父对象/其他,86,继承中的super对象,类的继承,父类,子类,调用父类的变量和方法,调用子类的变量和方法,87,继承中的构造方法,类的继承,publicclassCartoonextendsDrawingCartoon()System.out.println(CartoonConstructor);publicstaticvoidmain(Stringargs)Cartoonc=newCartoon();,classArtArt()System.out.println(ArtConstructor);,classDrawingextendsArtDrawing()System.out.println(DrawingConstructor);,ArtConstructorDrawingConstructorCartoonConstructor,子类的构造方法必须调用父类的构造方法,classDrawingextendsArt/*Drawing()System.out.println(DrawingConstructor);*/,ArtConstructorCartoonConstructor,publicclassCartoonextendsDrawingCartoon()super();System.out.println(CartoonConstructor);publicstaticvoidmain(Stringargs)Cartoonc=newCartoon();,88,再谈继承中的构造方法,类的继承,publicclassChessextendsBoardGameChess()super(3);System.out.println(CartoonConstructor);publicstaticvoidmain(Stringargs)Chessc=newChess();,classGameGame(inti)System.out.println(“GameConstructor);,classBoardGameextendsGameBoardGame(inti)super(i);System.out.println(“BoardGameConstructor);,子类的构造方法必须要对父类的构造方法进行调用,不管以任何形式,否则编译出错,89,再谈继承中的构造方法,类的继承,classAA(inti),classBextendsAB(Strings),B(Strings)super();,90,类的继承,子类可重新定义父类中已有的静态变量(static),classPointstaticintx=2;classTPointextendsPointstaticdoublex=4.7;publicstaticvoidmain(Stringargs)newTPoint().printX();voidprintX()System.out.println(x+Point.x);,4.72,91,类的继承,子类可重新定义父类中已有的实例变量,classPointintx=2;classTPointextendsPointdoublex=4.7;voidprintBoth()System.out.println(x+super.x);publicstaticvoidmain(Stringargs)TPointt=newTPoint();t.printBoth();System.out.println(t.x+(Point)t).x);,4.724.72,92,类的继承,再谈子类对父类变量的继承,importpoints.Point3d;classPoint4dextendsPoint3dintw;publicvoidmove(intdx,intdy,intdz,intdw)x+=dx;y+=dy;z+=dz;w+=dw;,packagepoints;publicclassPointintx,y;publicvoidmove(intdx,intdy)x+=dx;y+=dy;,packagepoints;publicclassPoint3dextendsPointintz;publicvoidmove(intdx,intdy,intdz)x+=dx;y+=dy;z+=dz;,目录结构/points/Point.class/points/Point3d.class/Point4d.class,importpoints.Point3d;classPoint4dextendsPoint3dintw;publicvoidmove(intdx,intdy,intdz,intdw)super.move(dx,dy,dz);w+=dw;,编译时报错:x,y,z仅在本包中才能访问,继承与类成员的访问修饰符有关!,93,类的继承,类成员访问修饰符与继承的关系,classPointintx,y;privatePoint()reset();Point(intx,inty)this.x=x;this.y=y;privatevoidreset()this.x=0;this.y=0;,classColoredPointextendsPointintcolor;voidclear()reset();,classTestpublicstaticvoidmain(Stringargs)ColoredPointc=newColoredPoint(0,0);c.reset();,AnerroroccursbecauseColoredPointhasnoconstructordeclaredwithtwointegerparameters,asrequestedbytheuseinmain.ThisillustratesthefactthatColoredPointdoesnotinherittheconstructorsofitssuperclassPoint.,AnothererroroccursbecauseColoredPointdeclaresnoconstructors,andthereforeadefaultconstructorforitisautomaticallycreated,andthisdefaultconstructorisequivalentto:ColoredPoint()super();whichinvokestheconstructor,withnoarguments,forthedirectsuperclassoftheclassColoredPoint.TheerroristhattheconstructorforPointthattakesnoargumentsisprivate,andthereforeisnotaccessibleoutsidetheclassPoint.,TwomoreerrorsoccurbecausethemethodresetofclassPointisprivate,andthereforeisnotinheritedbyclassColoredPoint.,94,类的继承,类成员访问修饰符与继承的关系私有的(private)类成员不能被子类继承公共的(public)和保护性的(protected)类成员能被子类继承,且子类和父类可以属于不同的包无修饰的父类成员,仅在本包中才能被子类继承构造函数不是类成员,所以不被继承,packagepoints;publicclassPointpublicintx,y;protectedintuseCount=0;staticprotectedinttotalUseCount=0;publicvoidmove(intdx,intdy)x+=dx;y+=dy;useCount+;totalUseCount+;,importpoints.Point;classTestextendsPointpublicvoidmoveBack(intdx,intdy)x-=dx;y-=dy;useCount+;totalUseCount+;,95,类的继承,例,classPositionintx,y;Position(intpx,intpy)x=px;y=py;voidshow()System.out.println(x+”,”+y);,classSpotextendsPositionbooleandisplay;Spot(intsx,intsy,booleansf)super(sx,sy);display=sf;voidchange(intcx,intcy)x=cx;y=cy;,classBoxextendsSpotintr;Box(intbx,intby,intbr,booleanbf)super(bx,by,bf);r=br;voidadd(intda)r+=da;voidred(intda)r-=da;voidshow()System.out.print(“起点:”);super.show();System.out.print(“边长:”+r);if(display)System.out.println(“显示”);elseSystem.out.println(“不显示”);,Spots=newSpot(100,100,false);s.show();Boxb=newBox(100,100,30,true);b.show();b.change(200,300);b.add(50);b.show();,96,继承中类对象作为参数传递,类的继承,classSidevoiddisplay()System.out.println(“平面:”);,classSpotextendsSideprivateintx,y;Spot(intu,intv)x=u;y=v;voiddisplay()System.out.println(x+“+y);,classLineextendsSideprivateintx1,y1,x2,y2;Line(inta1,intb1,inta2,intb2)x1=a1;y1=b1;x2=a2;y2=b2;voiddisplay()System.out.println(x1+“+y1);System.out.println(x2+“+y2),Spots=newSpot(2,3);Linel=newLine(1,2,3,4);display(s);display(l);,staticvoiddisplay(Sides)s.display();,97,Subclassesinheritthosesuperclassmembersdeclaredaspublicorprotected.Subclassesinheritthosesuperclassmembersdeclar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校教育与职业技能培训协议
- 企业运营成本控制方案库
- 艺术流派及发展历程概述:美术课堂教学设计
- 直接引语与间接引语的转换规则:六年级英语语法课教案
- 小猪学样550字(11篇)
- 纪念塔课件教学
- 银滩之旅250字(12篇)
- 关于七夕节的英语作文11篇
- 2025年事业单位招聘统计类试卷:统计学在美学中的
- 2025年商务英语(BEC)中级考试真题模拟卷:模拟实战演练
- 九上英语单词表人教版
- 2025年北京车牌租赁合同范本
- 2024年高考新课标Ⅱ卷语文试题讲评课件
- 4S店企业职业卫生培训
- 静脉配液治疗操作核对流程
- 检验科糖尿病
- 产科医疗安全与质量控制制度
- 石油化工设备维护与检修手册
- 拆迁工程成本控制方案
- DB31-T 1502-2024 工贸行业有限空间作业安全管理规范
- 合肥新华书店招聘笔试题库2024
评论
0/150
提交评论