韩顺平java从入门到精通视频教程全94讲学习笔记整理含练习题答案

上传人:仙*** 文档编号:145494597 上传时间:2022-08-29 格式:DOC 页数:436 大小:4.10MB
收藏 版权申诉 举报 下载
韩顺平java从入门到精通视频教程全94讲学习笔记整理含练习题答案_第1页
第1页 / 共436页
韩顺平java从入门到精通视频教程全94讲学习笔记整理含练习题答案_第2页
第2页 / 共436页
韩顺平java从入门到精通视频教程全94讲学习笔记整理含练习题答案_第3页
第3页 / 共436页
资源描述:

《韩顺平java从入门到精通视频教程全94讲学习笔记整理含练习题答案》由会员分享,可在线阅读,更多相关《韩顺平java从入门到精通视频教程全94讲学习笔记整理含练习题答案(436页珍藏版)》请在装配图网上搜索。

1、韩顺平Java从入门到精通视频(全94讲详细笔记)和作业详解java平台1、J2SE java开发平台标准版2、J2EE java开发平台企业版java程序需要在虚拟机上才可以运行,换言之只要有虚拟机的系统都可以运行java程序。不同系统上要安装对应的虚拟机才可以运行java程序开发步骤1、编写源文件 (.java)2、编译源文件为类文件(.class)可用J2SE或J2EE编译3、在虚拟机上运行注释/单行注释/* */多行注释java内容介绍java编程可以分成三个方向:1、java se (j2se)桌面开发 java中的基础中的基础2、java ee (j2ee)web开发3、java

2、me (j2me)手机开发java se课程介绍java面向对象编程(基础)java图开界面开发java数据库编程java文件io流编程java网络编程java多线程编程java ee基础1java面向对象编程-数据库编程-java sejava 基础2html-css-javascript-div+cssjava ee中级部分Servlet-Jsp-mvc模式java ee高级部分Struts-Ejb-Hibernate-Spring-Ajax(ext,dw2)-ssh框架java之父gosling1990 sun启动 绿色计划1992 创建oak语言-java1994 gosling参加硅

3、谷大会演示java功能,震惊世界1995 sun正式发布java第一个版本,目前最新是jdk7.0java开发工具记事本、(jcreator、jbuilder退出舞台了)、netbean、eclipse如何选择开发工具先选择记事本,对java有一定了解后再使用eclipse高级开发工具为什么呢?1、更深刻的理解java技术,培养代码感2、有利于公司面试java语言的特点1、java语言是简单的2、java语言是面向对象的3、java语言是跨平台(操作系统)的即一次编译,到处运行4、java是高性能的java第一个程序hello.java运行java程序要安装和配置jdkjdk是什么?1、jdk

4、全称java dvevlopment kit中文java开发工具包2、jdk是sun公司开发的3、jdk包括jre(java runtime envirnment)java运行环境、一堆java工具和java基础的类库(类共3600左右,常用类在150个左右)4、可以在下载*开发安装jdk,用户执行需要安装jre配置JDK 添加环境变量即可windows下配置jdk在计算机属性-高级设置-环境变量-添加PATH将JDK所在路径指定即可。多个环境变量设置时需要用;号进行隔开1、编写第一个hello.java/注释 (解释) 作者:/功能:在控制台显示hello/日期:2013.11.28/pub

5、lic:表示这个类是公共的,一个java文件中只能有一个public类/class:表示这是一个类/hello:类名(公共类的类名必须和文件名一致)public class hello /一个主函数,相当于是程序的入口 public static void main(String args) /执行语句 /System:是一个包 /out.println是输入函数 System.out.println(hello!); 2、编译hello.java 使用javac hello.java3、执行hello.java 使用java hellojava程序运行关系1、java源文件(.java文件)

6、2、java编译器即javac.exe3、java字节码文件(.class文件)4、由解释执行器即(java.exe)将字节码文件加载到java虚拟器(jvm)5、字节码文件(.class)就会在java虚拟机中执行对hello.java程序进行改过使之变为一个简单的加法运算程序/注释 (解释) 作者:/功能:在控制台显示hello/日期:2013.11.28/public:表示这个类是公共的,一个java文件中只能有一个public类/class:表示这是一个类/jiafa:类名(公共类的类名必须和文件名一致)public class jiafa /一个主函数,相当于是程序的入口 publi

7、c static void main(String args) /执行语句 /System:是一个包 /out.println是输入函数 / System.out.println(hello!); int a=10;/定义一个变量,变量名a,它的值10int b=20;/定义一个变量,变量名b,它的值20 int result=a+b;/定义一个叫result变量将变量ab相加的值赋值给result /输出结果 System.out.println(结果是+result); -为什么有变量不论是使用哪种高级程序语言编写程序,变量都是其程序的基本组成单位。java中的基本数据类型的定义与c/c+

8、中大体一致。public class Testpublic static void main(String args) int a=1;/定义一个整形变量,取名a,并赋初值1 int b=3;/定义一个整形变量,取名b,并赋初值3 b=89;/给变量b赋89 System.out.println(a);/输出语句,把变量a的值输出 System.out.println(b);/把变量b的值输出-java基本语法-基本数据类型java基本数据类型 四大类型整数类型、小数(浮点)类型、布尔类型、字符类型整数类型可以表示一个整数,常用的整数类型有:byte,short,int,long主要区别是 数

9、据大小范围,请大家看一个小案例。byte 占用内存 一个字节 范围:-128至127short 占用内存 两个字节 范围:-32768至32767int 占用内存 四个字节 范围:-2147483648至2147483647long 占用内存 八个字节 范围:-?至?小数(浮点)类型可以表示一个小数,常用的小数(浮点)类型有:float(单精度),double(双精度)float 占用内存 四个字节 范围:3.4E-38至3.4E+38 只能提供7位有效数字double占用内存 八个字节 范围:1.7E-308至1.7E+308 可提供16位有效数字布尔类型可以表示真或者假,类型是boolea

10、n比如:boolean spBool=true; /给变量spBool定义为boolean型并赋值为真字符类型可以表示 单个字符,字符类型是char。char是两个字节(可以存放汉字)多个字符我们称为字符串,在java中String这种数据类型表示,但是String不是基本数据类型,而是类,类是复合数据类型。结论:在java中,对char进行运算的时候,直接当做ascii码对应的整数对待。思考:int test1=a+b; 输出值195 char test2=a+b; 输出值? char test3=中; 输出值195java基本语法-定义变量,初始化,赋值定义变量1、什么是定义变量?int

11、a; 这就是定义了一个变量,变量名是afloat haha;这也定义了一个变量,表示一个float类型的小数,变量名是haha初始化变量在定义变量的时候,就给值int a=45;这就是初始化变量a给变量赋值比如你先定义了变量:int tt;然后再给值tt=780; -这就是给变量赋值-java基本语法-基本数据类型转换自动转换int a=1.2; double b=3;结论:数据类型可以自动的从低精度-高精度。高精度不能转为低精度。byte小于short小于int小于long小于float小于大于;3、=大于等于;5、b)System.out.println(ok2);if(a=b)Syste

12、m.out.println(ok3);请编写一个程序,该程序可以接收两个数(可以是整数,也可是小数)并判断两个数是大于?小于?还是等于?程序代码:import java.io.*;/载入IO流包public class Demo5public static void main(String args)try/输入流,从键盘接收数InputStreamReader isr=new InputStreamReader(System.in);BufferedReader br=new BufferedReader(isr);/给出提示System.out.println(请输入第一个数);/从控制台

13、读取一行数据String a1=br.readLine();System.out.println(请输入第二个数);String a2=br.readLine();/把String转为floatfloat num1=Float.parseFloat(a1);float num2=Float.parseFloat(a2);if(num1num2)System.out.println(第一个大);if(num1=num2)System.out.println(相等);if(num18)System.out.println(ok1);b-;if(ab & a45)System.out.println

14、(ok2);if(!(a=b)System.out.println(ok3);java基本语法-三大流程控制顺序控制听其名而知其意,让程序可以顺序的执行。请大家看个案例demo11.java:int a=7;System.out.println(a=+a);System.out.println(hello!);a+;System.out.println(a=+a);System.out.println(0(_)0);a+;System.out.println(a=+a);分支控制让程序有选择的执行,分支控制有三种:1、 单分支;2、双分支;3、多分支a1、单分支语法:if(条件表达式)语句;2

15、、双分支语法:if(条件表达式)语句;else语句;3.1、多分支语法:if(条件表达式)语句;else if(条件表达式)语句;else if(条件表达式)语句;else语句;3.2、多分支语法:switch(条件表达式) /*条件表达式数据类型,就和case常量表达式一致,否则就会报错。case 常量1:语句1; /语句1至break中相当于可以加入相应程序代码break; /break,表示跳出switch语句case 常量2:语句1;break;.case 常量n:语句n;break;default:语句;break;*:switch中的可用数据类型主要是:允许byte,short,i

16、nt,char,enum等1、单分支控制作业:请大家看个案例demo22.java:编写一个程序,可以输入人的年龄,如果该同学的年龄大于18岁,则输出“你年龄大于18,要为自己的行为负责!”2、双分支控制作业:请大家看个案例demo33.java:编写一个程序,可以输入人的年龄,如果该同志的年龄大于18岁,则输出“你年龄大于18岁,要对自己的行为负责!”否则,输出“你的年龄不大这次放过你了”3、多分支控制作业:请大家看个案例demo44.java编写一个程序,可以输入人的年龄,如果该同志的年龄大于18岁,则输出“你年龄大于18,要对自己的行业负责,送入监狱”。如果该同志的年龄大于10岁并且小于

17、等于18,则输出“你的年龄也不小了,把你送少管所”。其它情况,则输出“小孩子,下次注意”。4、多分支控制作业:请大家看个案例demo55.java请编写一个程序,该程序可以接收一个字符,比如:a,b,c,d,e,f,ga表示星期一,b表示星期二.根据用户的输入显示相应的信息,要求使用switch语句完成。5、多分支控制作业:请大家看个案例demo66.java对比switch与if语句在执行分支语句的区别。*switch分支语句不支持判断类型即boolean类型,switch只支持byte,short,int,char,enum等数据类型-循环控制听其名而知其意,就是让你的代码可以循环的执行。

18、循环控制有三种1、for循环 语法:for(循环初值;循环条件;步长)语句; /循环体2、while循环 语法:while(循环条件)语句; /循环体特别说明:while循环是先判断在执行语句。3、do while循环 语法:do语句; /循环体while(循环条件);特别说明:do while循环是先执行,再判断。请大家看个案例demo77-88-99.java:编写一个程序,可以打印10句“你好,我是刘德华同志!”。请大家想想怎么做?1、for循环for (int a=0;a10;a+)System.out.println(你好,我是刘德华同志!);2、while循环int i=0;whi

19、le(i10)System.out.println(你好,我是刘德华同志!);i+;3、do while循环int i=0;doSystem.out.println(你好,我是刘德华同志!);i+;while(i打四次int lay=4;/表示有多少层for(int i=1;i=lay;i+)/打印*for(int j=1;j=i;j+)System.out.print(*);System.out.println();/换行-/金字塔Demo101.javapublic class Demo101public static void main(String args)int lay=10;/表

20、示有多少层for(int i=1;i3 2-2 3-1 4-0找出空格for(int k=1;k1 2-3 3-5 4-7找出星的规律for(int j=1;j=(i-1)*2+1;j+)System.out.print(*);System.out.println();/换行-/镂空金字塔Demo102.javapublic class Demo102public static void main(String args)int lay=10;/表示有多少层for(int i=1;i3 2-2 3-1 4-0找出空格for(int k=1;k1 2-3 3-5 4-7找出星的规律for(int

21、 j=1;j=(i-1)*2+1;j+)/判断该层是否是顶层或者是底层if(i=1|i=lay)System.out.print(*);else/如果是第一个*if(j=1|j=(i-1)*2+1)System.out.print(*);elseSystem.out.print( );System.out.println();/换行-/空心菱形Demo103.javapublic class Demo103public static void main(String args)int lay=4;/菱形上半部行数for(int i=1;i=lay-1;i+) /判断循环上半部分for(int

22、k=1;k=lay-i;k+) /找行内*号前输出空格System.out.print( );for(int j=1;j=(i-1)*2+1;j+) /找行内输出星的位置if(j=1|j=(i-1)*2+1) /判断行最小长度和最大长度,并在最小长度和最大长度上输出*号,行内输入出空格。System.out.print(*);elseSystem.out.print( ); System.out.println(); /换行for(int i=1;i=lay;i+) /判断循环菱形下半部分for(int k=1;k=i-1;k+) /判断循环找*号前要输出空格处System.out.print

23、( );for(int j=1;j=(lay-i)*2+1;j+) /判断循环行长度if(j=1|j=(lay-i)*2+1) /判断行最小长度和最大长度,并在最小长度和最大长度上输出*号,行内输入出空格。System.out.print(*);elseSystem.out.print( ); System.out.println();/输出换行-/实心菱形Demo104.javapublic class Demo104public static void main(String args)int lay=4;/菱形上半部行数for(int i=1;i=lay-1;i+) /判断循环上半部分f

24、or(int k=1;k=lay-i;k+) /找行内*号前输出空格System.out.print( );for(int j=1;j=(i-1)*2+1;j+) /找行内输出星的位置System.out.print(*);System.out.println(); /换行for(int i=1;i=lay;i+) /判断循环菱形下半部分for(int k=1;k=i-1;k+) /判断循环找*号前要输出空格处System.out.print( );for(int j=1;j猫类-对象(实例) -对象(实例) -.注意:从猫类到对象,目前有几种说法:1、创建一个对象;2、实例化一个对象;3、对

25、类实例化.以后大家听到这些说法,不要模糊。(对象就是实例,实例就是对象)java最大的特点就是面向对象。/定义猫类public class Demo105public static void main(String args)/创建一个猫对象Cat cat1=new Cat();/Cat是定义的一个数据类型/Cat cat1;/cat1=new Cat();/ 等同于 Cat cat1=new Cat();/访问属性的 对象名.属性名字cat1.age=3;cat1.name=小白;cat1.color=白色;/创建第二只猫Cat cat2=new Cat();cat2.age=100;cat

26、2.name=小花;cat2.color=花色; /java中如何定义一个类?类名的首写字母大写可根据程序的需要定义类class Cat/下面的就是类的成员变量/属性int agr;String name;String color;Master myMaster;/引用类型,比如建个主人类class Masterint age;String name;String address;类和对象的区别和联系1、类是抽象的,概念的,代表一类事物,比如人类,猫类.2、对象是具体的,实际的,代表一个具体事物3、类对象的模板,对象是类的一个个体,实例类-如何定义类一个全面的类定义比较复杂,如:package

27、 包名;class 类名 extends 父类 implements接口名 成员变量; 构造方法; 成员方法;要透彻的掌握类,必须要了解类的构成class 类名 - 待定. 成员变量;类-类的成员变量成员变量是类的一个组成部分,一般是基本数据类型,也可是引用类型。比如我们前面定义猫类的int age 就是成员变量。对象-如何创建对象创建一个对象有两种方法1、先声明再创建 1、对象声明:类名 对象名 2、对象创建:对象名=new 类名()2、一步到位法 类名 对象名=new 类名()对象-如何访问(使用)对象的成员变量 对象名.变量名; /简单先这样理解,以后加下控制符此表达就不准确了。*对象总

28、是存在内存中的一个小思考题Demo.105.java为了让大家加深印象,我们定义一个人类(Person)(包括名字、年龄)。用一步到位法去创建一个对象我们看看下面一段代码: System.out.printlin(b.age);Person a=new Person(); 请问:b.age究竟是多少?a.age=10;a.name=小明;Person b;b=a;*对象总是存在内存中的一个小思考题Demo106.java在明白对象是如何在内存中存在后,请大家再看看下面的思考题,请问会输出什么信息?Person1 a=new Person1();a.age=10;a.name=小明;Person

29、1 b;b=a;System.out.println(b.name);/输出“小明”b.age=200;System.out.println(a.age);/输出a.age为200*重点也是难点类-成员方法的初步介绍在某些情况下,我们要需要定义成员方法。比如人类:除了有一些属性外(成员变量表示的年龄、姓名.),我们人类还有一些行为比如:可以说话、跑步.,通过学习,我们人类还可以做算术题。这时就要用成员方法才能完成。现在要求对Person类完善:1、添加speak成员方法,输入出:我是一个好人2、添加jisuan成员方法,可以计算从1+.+1000的结果3、修改jisuan成员方法,该方法可以接

30、收一个数n,计算从1+.+n的结果4、添加add成员方法,可以计算两个数的和类-类的成员方法(成员函数)定义成员方法也叫成员函数,这里希望大家不要被两个名词搞晕了。public 返回数据类型 方法名(参数列表)语句;/方法(函数)主体1、参数列表:表示成员函数输入2、数据类型(返回类型):表示成员函数输出3、函数主体:表示为了实现某一功能代码块/类的调用及方法调用Demo108.javapublic class Demo108public static void main(String args)Person p1=new Person();p1.speak();/调用speak方法p1.ji

31、Suan();/调用计算方法p1.jiSuan(200);/调用可以传入参数的计算方法p1.add(12,10);/调用两个数的和int res=p1.add2(23,34);/调用两个数的和并返回值到res中System.out.println(res返回值是:+res);System.out.println(num1+num2+num3=+p1.add3(2,2.3f,4.5f);/返回类型一定要一致否则报错。/定义名字的几个方法:/1、驼峰法 如myCry;2、下划线法my_cry/方法名在有不同参数的情况下可以使用同一个方法名,即有参数和没参数的方法可以同名class Person /

32、请注意类名首写字母应为大写如Person为类名 int age;String name;/1、可以输出我是好人方法public void speak() /请注意方法名的首写字母应为小写如speak为方法名System.out.println(我是一个好人);/2、可以计算1+.+1000的方法public void jiSuan()int result=0;for(int i=1;i=1000;i+)result=result+i;System.out.println(1+.+1000结果是+result);/3、带参数的成员方法,可以输入n值并计算1+.+npublic void jiSu

33、an(int n)int result=0;for(int i=1;i=n;i+)result+=i;System.out.println(1+.+n结果是+result);/4、计算两个数的和public void add(int num1,int num2)int result=0;/与下面一句等同于return num1+num2;result=num1+num2;System.out.println(num1+num2=+result);/5、计算两个数的和,并将结果返回给主调(调用它的)函数/注意:返回类型和返回结果的类型要一致/注意:在调用某个成员方法的时候,给出的具体数值的个数/

34、和类型要相匹配。public int add2(int num1,int num2)return num1+num2;/6、计算两个float数的和,并将结果返给主调函数public float add3(int num1,float num2,float num3)return num1+num2+num3;类-类的成员方法(函数)-如何理解如何理解方法这个概念,给大家举个通俗的示例:程序员调用方法:给方法必要的输入,方法返回结果。类的成员方法-声明public int test(int a);/*方法声明*/这句话的作用是声明该方法,声明的格式为:访问修饰符 数据类型 函数名(参数列表);

35、在给Person类添加add方法的例题中,我们看到的关键字return,它的功能是把表达式的值返回的值返回给主调函数的方法。return 表达式;类的成员方法(函数)-特别说明1、方法的参数列表可以是多个案例:在Person类中编写一个成员方法,从键盘输入三个数,返回最大的那个数。参数列表可以是多个,并且数据类型可以是任意的类型int float double char.访问修饰符 返回数据类型 函数名(参数列表)语句; /函数主体2、方法可以没有返回值案例:编写一个函数,从控制台输入一个整数打印出对应的金字塔。返回类型可以是任意的数据类型(int,float,double,char.)也可以

36、没有返回值void表示没有返回值访问修饰符 返回数据类型 函数名(形参列表)语句; /函数主体类的成员方法(函数)-小练习案例:编写一个成员函数,从键盘输入一个整数(1-9),打印出对应的乘法表Demo110.java/实例键盘输入打印乘法表Demo110.javaimport java.io.*;public class Demo110public static void main(String args)Cfb jiu=new Cfb();jiu.cf();class Cfbpublic void cf()try/输入流,从键盘接收数InputStreamReader isr=new In

37、putStreamReader(System.in);BufferedReader br=new BufferedReader(isr);/给出提示System.out.println(请输入1-9,按0退出:);/从控制台读取一行数据String a1=br.readLine();/把String转为intint num1=Integer.decode(a1);for(int i=1;i=num1;i+)for(int j=1;j=i;j+)System.out.print(i+j+=+(i*j)+t);System.out.println();catch(Exception e) e.pr

38、intStackTrace(); 案例:编写函数,使给定的一个二维数组(33)转置类定义的完善在介绍了成员方法后,我们类的定义就可以完善一步:class 类名 class 类名 待定成员变量; 成员变量; 成员方法; 小结:1.先设计类;2.然后根据类创建对象。小练习:1、设计计算机类,要求如下:Demo109.java属性:品牌(Brand)、颜色(Color)、cpu型号(CPU)、内存容量(Memory)、硬盘大小(Harddisk)、价格(Price)、工作状态(Work)方法:打开(Open)、关闭(Close)、休眠(Sleep)创建一个计算机对象,调用打开,关闭方法/计算机类与对

39、象的代码import java.io.*;/加载IO流包public class Demo109public static void main(String args)Computer Pc=new Computer();Pc.Brand=品牌;Pc.Color=颜色;Pc.Cpu=Cpu型号;Pc.Memory=内存容量;Pc.Hd=硬盘容量;Pc.Price=价格;Pc.Work=工作状态;try/输入流,从键盘接收数InputStreamReader isr=new InputStreamReader(System.in);BufferedReader br=new BufferedRe

40、ader(isr);/给出提示System.out.println(请输入0-9控制机器);/从控制台读取一行数据String a1=br.readLine();/把String转为floatfloat num1=Float.parseFloat(a1);if(num1=0)Pc.open();else if(num1=1)Pc.close();else if(num1=2)Pc.sleep();else if(num1=3)System.out.println(Pc.Brand);else if(num1=4)System.out.println(Pc.Color);else if(num1

41、=5)System.out.println(Pc.Cpu);else if(num1=6)System.out.println(Pc.Memory);else if(num1=7)System.out.println(Pc.Hd);else if(num1=8)System.out.println(Pc.Price);else if(num1=9)System.out.println(Pc.Work);else System.out.println(输入错误!);catch(Exception e) e.printStackTrace();class ComputerString Brand;

42、String Color;String Cpu;String Memory;String Hd;String Price;String Work;public void open()System.out.println(开机);public void close()System.out.println(关机);public void sleep()System.out.println(休眠);2、 采用面向对象思想设计超级马里奥游戏人物-2、java面向对象编程(1)-构造方法(函数)类的构造方法介绍什么是构造方法呢?在回答这个问题之前,我们来看一个需求:前面我们在创建人类的对象时,是先把一个

43、对象创建好后,再给他的年龄和姓名属性赋值,如果现在我要求,在创建人类的对象时,就直接指定这个对象的年龄和姓名,该怎么做?你可以在定义类的时候,定义一个构造方法即可。构造方法是类的一种特殊的方法,它的主要作用是完成对新对象的初始化。它有几个特点:1、方法名和类名相同2、没有返回值3、在创建一个类的新对象时,系统会自动的调用该类的构造方法完成对新对象的初始化。特别说明:一个类可以定义多个不同的构造方法。/例人类构造方法Demo111.javapublic class Demo111public static void main(String args)Person p1=new Person(12

44、,顺平);/给予不同的初始值,调用的构造方法不同,构造方法虽同名,但系统会根据初始值来选定构造方法。/定义一个人类class Personint age;String name;/默认构造方法public Person()/构造方法的主要用处是:初始化你的成员属性(变量)/构造方法public Person(int age,String name)System.out.println(我是构造1);age=age;name=name;/构造方法2public Person(String name)System.out.println(我是构造2);name=name;类的默认构造方法有些同志可能

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!