面向对象编基础

上传人:cl****1 文档编号:590328557 上传时间:2024-09-13 格式:PPT 页数:64 大小:1.16MB
返回 下载 相关 举报
面向对象编基础_第1页
第1页 / 共64页
面向对象编基础_第2页
第2页 / 共64页
面向对象编基础_第3页
第3页 / 共64页
面向对象编基础_第4页
第4页 / 共64页
面向对象编基础_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《面向对象编基础》由会员分享,可在线阅读,更多相关《面向对象编基础(64页珍藏版)》请在金锄头文库上搜索。

1、Java 语言程序设计(一)语言程序设计(一)串讲串讲主讲人主讲人: :周立民周立民更多优质自考资料尽在百度贴吧自考乐园俱乐部(http:/ 名胜名胜人人物品物品 动物动物 ,植物,植物 面向对象编程基础面向对象编程基础对象的特征象的特征属性属性属性对象具有的各种特征 每个对象的每个属性都拥有特定值例如:王小红和朱小雨的体重不一样60kg王小红王小红属性属性35岁岁收银员小王收银员小王 对象的特征象的特征方法方法方法对象执行的操作打单打单收银收银方法方法刷卡刷卡收银员王小红收银员王小红封装封装对象同时具有属性和方法两项特性对象的属性和方法通常被封装在一起,共同体现事物的特性, 二者相辅相承,不

2、能分割谁看见过只有谁看见过只有“完好完好的零件和颜色的零件和颜色”而不而不能开动的汽车?能开动的汽车?类:从对象抽取出类类:从对象抽取出类顾客类轿车类 类是模子,确定对象将会拥有的类是模子,确定对象将会拥有的特征(属性)和行为(方法)特征(属性)和行为(方法)类是对象的类型类是对象的类型不同于不同于int类型:具有方法类型:具有方法各种口味的球状冰淇淋各种口味的球状冰淇淋球状冰淇淋模子球状冰淇淋模子类和对象有什么区别呢?类和对象有什么区别呢?类是抽象的概念,仅仅是模板,比如说:“人”对象是一个你能够看得到、摸得着的具体实体,比如:“小布什”小布什小布什普京普京克林顿克林顿“人人”类类特征(属性

3、)特征(属性)年龄年龄体重体重行为(方法)行为(方法)衣衣食食住住行行Java 是面向是面向对象的象的语言言 所有所有Java程序都以类程序都以类class为组织单元为组织单元关键字关键字class定义自定义的数据类型定义自定义的数据类型publicclassHelloWorldpublicstaticvoidmain(Stringargs)System.out.println(使用使用Java语言理解程序逻辑语言理解程序逻辑);Java类模板类模板类将现实世界中的概念模拟到计算机程序中publicclass类名类名/定义属性部分定义属性部分属性属性1的类型的类型属性属性1;属性属性2的类型的

4、类型属性属性2;属性属性n的类型的类型属性属性n;/定义方法部分定义方法部分方法方法1;方法方法2;方法方法m;定义类定义类定义一个类的步骤1、定义类名2、编写类的属性3、编写类的方法常见错误常见错误publicclass.BookStringbookName;StringauthorName;intpageNum;booleanisAvailable;类命名规则:类命名规则:1、不能使用、不能使用Java关键字关键字2、首字母可以为字母,也可以是、首字母可以为字母,也可以是“_”或或“$”(建议不要这建议不要这样样)3、不能包含空格或、不能包含空格或“.”号号代码错误代码错误如何创建和使用对

5、象如何创建和使用对象使用对象的步骤:使用new创建类的一个对象使用对象:使用“.”进行以下操作给类的属性赋值:对象名.属性调用类的方法:对象名.方法名()Schoolcenter=newSchool();center.schoolName=“北京大学北京大学;/给属性赋值给属性赋值center.toString();/调用类的方法,该方法中的操作将被执行调用类的方法,该方法中的操作将被执行面向对象(面向对象(OO)的优点)的优点便于程序模拟现实世界中的实体用“类”表示实体的特征和行为隐藏细节对象的行为和属性被封装在类中,外界通过调用类的方法来获得,不需关注内部细节如何实现可重用可以通过类的模板

6、,创建多个类的对象数据类型总结数据类型总结intdoublechar String使用使用class定义的类型定义的类型StudentTeacherSchool基本数据类型基本数据类型引用数据类型引用数据类型数据类型使用区别数据类型使用区别数据类型数据类型特征特征声明声明使用使用基本数据类型基本数据类型没有方法没有方法inti=8;i+;引用数据类型引用数据类型具有方法具有方法Studentstu=newStudent();stu.age+;类的方法类的方法写出狮子对象的“跑”方法写出狮子对象的“叫”方法电动玩具狮子电动玩具狮子属性:属性:颜色:黄色颜色:黄色行为:行为:跑跑叫叫按此按钮,按此

7、按钮,狮子开始跑狮子开始跑如何定义类的方法如何定义类的方法类的方法定义类的某种行为(或功能)方法的定义方法的定义方法的名称方法的名称方法的主体方法的主体方法返回的数据类型方法返回的数据类型定义类的方法定义类的方法public返回值类型返回值类型方法名方法名()/这里编写方法的主体这里编写方法的主体步骤一:定义方步骤一:定义方法名以及返回值法名以及返回值步骤二:编写方步骤二:编写方法体法体方法的命名方法的命名如何给方法起名字?必须以字母、_或开头可以包括数字,但不能以它开头遵循的命名规范通常方法名是一个动词,如果有两个以上单词组成,第一个单词的首字母小写,其后单词首字母大写方法的返回值方法的返回

8、值两种情况如果方法具有返回值,方法中必须使用关键字return返回该值,返回类型为该返回值的类型如果方法没有返回值,返回类型为voidpublicclassStudentStringname=张三张三;publicvoidgetName()returnname;返回类型要匹配返回类型要匹配return表达式;表达式;编译错误编译错误常见错误常见错误public class School public static void main(String args) return “北京大学! ; 返回类型是返回类型是void方法中不能有返回值方法中不能有返回值常见错误常见错误public class

9、 Student public double getInfo() double weight = 95.5; double height = 1.69; return weight, height; 方法至多可以返回一个值,方法至多可以返回一个值,不能返回多个值不能返回多个值方法调用方法调用方法是个“黑匣子”,完成某个特定的应用程序功能,并返回结果方法调用:执行方法中包含的语句 对象名对象名.方法名()方法名();方法调用小结方法调用小结方法之间允许相互调用,不需要知道方法的具体实现,提高了效率 情况情况举例举例1、类、类Student的方法的方法a()调用调用Student类类的方法的方法b

10、(),直接调用,直接调用publicvoida()b();/调用调用b()2、类、类Student的方法的方法a()调用类调用类Teacher的方法的方法b(),先创建类对象,然后使用,先创建类对象,然后使用“.”调用调用publicvoida()Teachert=newTeacher();t.b();/调用调用Teacher类的类的b()变量作用域变量作用域变量声明的位置决定变量作用域变量作用域确定可在程序中按变量名访问该变量的区域for(inti=0,a=0;i4;i+)a+;System.out.println(a);a的作用域仅在的作用域仅在for循环中循环中代码错误代码错误变量作用域

11、变量作用域变量变量1类型类型变量变量1;变量变量2类型类型变量变量2;变量变量3类型类型变量变量3;public返回类型返回类型方法方法1()变量变量4类型类型变量变量4;public返回类型返回类型方法方法2()变量变量5类型类型变量变量5;publicclassAutoLionAutoLion类的方法类的方法别的类的方法别的类的方法谁能使用这些变量?谁能使用这些变量?方法方法1方法方法2成员变量成员变量局部变量局部变量局部变量局部变量面向对象的编程思维面向对象的编程思维ScoreCalc类 和 Test类publicstaticvoidmain(Stringargs)Scannerinpu

12、t=newScanner(System.in);System.out.print(请输入请输入Java成绩:成绩:);intjava=input.nextInt();/*计算并显示输出计算并显示输出*/inttotal=java+c+db;doubleavg=total/3;System.out.print(总成绩:总成绩:+total);System.out.print(n平均分平均分:+avg);一次还可以接受,如果一次还可以接受,如果还要再执行这个功能,还要再执行这个功能,难道还要重复再写?难道还要重复再写?calcDiffTimecalcTotalScore()ScoreCalcsho

13、wTotalScore()calcAvg()showAvg()main()/程序入口程序入口/计算并输出总成绩计算并输出总成绩/计算并输出平均分计算并输出平均分Test调用调用调用调用类的方法实现某个特定的功能,类的方法实现某个特定的功能,别的类不需要知道它如何实现!别的类不需要知道它如何实现!知道了实现此功能的类和它的方法名,知道了实现此功能的类和它的方法名,就可以直接调用了,不用重复写代码!就可以直接调用了,不用重复写代码!什么是封装什么是封装publicclassTeacher2privateStringname;/教员姓名教员姓名/返回教员姓名返回教员姓名publicStringget

14、Name()returnname;/设定教员姓名设定教员姓名publicvoidsetName(Stringname)this.name=name;封装,就是隐藏实现细节将属性私有化,提供公有方法访问私有属性通过这些公有方法访问私有属性 Teacher2teacher=newTeacher2();teacher.setName(李芳李芳);StringtName=teacher.getName();通过通过setter、getter方法方法访问访问name属性属性this代表当前类的实例代表当前类的实例29如何实现封装如何实现封装封装的实现:1、修改属性的可见性来限制对属性的访问2、为每个属性

15、创建一对赋值(setter)方法和取值(getter) 方法,用于对这些属性的访问3、在setter和getter方法中,加入对属性的存取限制publicclassTeacher3privateStringname;/教员姓名教员姓名privateintage;/年龄年龄publicintgetAge()returnage;publicvoidsetAge(intage)if(age22)System.out.println(错误!最小年龄应为错误!最小年龄应为22岁!岁!);this.age=22;/如果不符合年龄要求,则赋予默认值如果不符合年龄要求,则赋予默认值elsethis.age=a

16、ge;/此处省略对此处省略对name属性的属性的setter、getter方法方法12330如何实现封装如何实现封装publicclassTeacher3Testpublicstaticvoidmain(Stringargs)AccpTeacher3teacher=newAccpTeacher3();teacher.setName(李芳李芳);teacher.setAge(10);System.out.println(teacher.introduction();使用封装,增加了数据访问限制,增强了程序的可维护性使用封装,增加了数据访问限制,增强了程序的可维护性错误!最小年龄应为错误!最小年龄

17、应为22岁!岁!大家好!我是李芳,我今年大家好!我是李芳,我今年22岁岁测试类通过调用测试类通过调用setter方法,为对象的各个属性赋值方法,为对象的各个属性赋值31什么是构造方法什么是构造方法构造方法负责对象成员的初始化工作,为实例变量赋予合适的初始值构造方法必须满足以下语法规则:1、方法名与类名相同2、没有返回类型publicclassTeacher5privateStringname;/教员姓名教员姓名/构造方法构造方法publicTeacher5()name=无名氏无名氏;PublicTeacher5Testpublicstaticvoidmain(Stringargs)Teache

18、r5teacher=newTeacher5();使用使用new关键字调用构造方法关键字调用构造方法32带参数的构造方法带参数的构造方法通过带参数的构造方法,显式地为实例变量赋予初始值 publicclassTeacher6privateStringname;/教员姓名教员姓名privateintage;/年龄年龄privateStringeducation;/学历学历privateStringposition;/职位职位/带参数的构造方法带参数的构造方法PublicTeacher6(StringpName,intpAge,StringpEducation,StringpPosition)nam

19、e=pName;age=pAge;/可以增加对可以增加对age等属性的存取限制条件等属性的存取限制条件education=pEducation;position=pPosition;publicStringintroduction()return大家好!我是大家好!我是+name+,我今年,我今年+age+岁,学历岁,学历+education+,目前职位是目前职位是+position;33带参数的构造方法带参数的构造方法通过调用带参数的构造方法,简化对象初始化的代码publicclassTeacher6Testpublicstaticvoidmain(Stringargs)Teacher6te

20、acher=newTeacher6(李芳李芳,23,本科本科,咨询师咨询师);System.out.println(teacher.introduction();创建对象时,一并完成了对创建对象时,一并完成了对象成员的初始化工作象成员的初始化工作大家好!我是李芳大家好!我是李芳,我今年我今年23岁,学历本科,目前职位是咨询师岁,学历本科,目前职位是咨询师34生活中的方法重载生活中的方法重载类类方法方法方法参数方法参数方法实现方法实现司机司机轿车轿车巴士巴士火车火车驾驶驾驶启动、行驶、启动、行驶、等待乘客上车、启动、等待乘客上车、启动、行驶、到站停车、行驶、到站停车、正点发车、行驶、正点发车、行

21、驶、到站停车、到站停车、如果用代码实现,我们需要三个方法,这些方法的方法名称如果用代码实现,我们需要三个方法,这些方法的方法名称相同,参数类型不同相同,参数类型不同35方法重载必须满足的条件方法重载必须满足的条件重载方法必须满足以下条件:方法名相同。方法的参数类型、个数、顺序至少有一项不相同。方法的返回类型可以不相同。方法的修饰符可以不相同。调用重载方法时,Java 使用参数的类型和数量决定实际调用重载方法的哪个版本。 36方法重载的代码示例方法重载的代码示例 1方法重载并不陌生java.io.PrintStream类的println方法能够打印数据并换行,根据数据类型的不同,有多种实现方式p

22、ublicclassTestpublicstaticvoidmain(Stringargs)inti=0;charc=z;Stringstr=hello;System.out.println(i);System.out.println(c);System.out.println(str);PrintStreamprintln(int)println(char)println(String)方法名相同,参数类型不同方法名相同,参数类型不同调用不同的调用不同的println方法方法方方法法重重载载37生活中的继承生活中的继承生活中,继承的例子随处可见动物动物食草动物食草动物食肉动物食肉动物谁是父类

23、?谁是父类?谁是子类?谁是子类?能说出继承的特点吗?能说出继承的特点吗?继承需要符合的关系:继承需要符合的关系:is-a,父类更通用、子类更具体,父类更通用、子类更具体38生活中的继承生活中的继承 子类具有父类的一般特性(包括属性和行为),以及自身特殊的特性巴士是汽车吗?巴士是汽车吗?卡车是汽车吗?卡车是汽车吗?出租车是汽车吗?出租车是汽车吗?最大载客数量最大载客数量报站报站引擎数量引擎数量外观颜色外观颜色刹车刹车加速加速汽车汽车最大载重量最大载重量卸货卸货所属公司所属公司最大载客数量最大载客数量打发票打发票属性属性行为行为39为什么要使用继承为什么要使用继承 ?使用继承,可以有效实现代码复用

24、使用继承,可以有效实现代码复用40如何实现继承如何实现继承在Java语言中,用extends关键字来表示一个类继承了另一个类,例如:publicclassJavaTeacher2extendsTeacher/其余代码省略其余代码省略在父类中只定义一些通用的属性与方法,例如:在父类中只定义一些通用的属性与方法,例如:publicclassTeacherprivateStringname;/教员姓名教员姓名privateStringschool;/所在中心所在中心publicAccpTeacher(StringmyName,StringmySchool)/初始化属性值初始化属性值publicvoi

25、dgiveLesson()/授课方法的具体实现授课方法的具体实现publicvoidintroduction()/自我介绍方法的具体实现自我介绍方法的具体实现41如何实现继承如何实现继承子类自动继承父类的属性和方法,子类中可以定义特定的属性和方法publicclassTeacherprivateStringname;/教员姓名教员姓名privateStringschool;/所在中心所在中心publicAccpTeacher(StringmyName,StringmySchool)/初始化属性值初始化属性值publicvoidgiveLesson()/授课方法的具体实现授课方法的具体实现pub

26、licvoidintroduction()/自我介绍方法的具体实现自我介绍方法的具体实现publicclassJavaTeacher2extendsTeacherpublicAccpJavaTeacher2(StringmyName,StringmySchool)super(myName,mySchool);publicvoidgiveLesson()System.out.println(启动启动Eclipse);super.giveLesson();由于由于giveLesson()方法与方法与父类的实现有所不同,因此父类的实现有所不同,因此重写了该方法重写了该方法方法重写:子类和父类的方法具

27、有相同的名称、参数列表、返回类型方法重写:子类和父类的方法具有相同的名称、参数列表、返回类型父类中的属性和方法可父类中的属性和方法可以被子类继承以被子类继承42publicclassJavaTeacher2extendsTeacherPublicJavaTeacher2(StringmyName,StringmySchool)super(myName,mySchool);如何实现继承如何实现继承子类的构造方法中,通过super关键字调用父类的构造方法方法重写后,通过方法重写后,通过super关键字调用父类的方法关键字调用父类的方法publicclassJavaTeacher2extendsTe

28、acherpublicvoidgiveLesson()System.out.println(启动启动Eclipse);super.giveLesson();通过调用父类的构造方法,通过调用父类的构造方法,完成对属性值的初始化完成对属性值的初始化43一切类的一切类的“祖先祖先”Object在Java 中,所有的Java类都直接或间接地继承了java.lang.Object类publicclassMyObject/publicclassMyObectextendsObject /在在Eclipse中调用中调用MyObject对象的成员,会自动弹出继对象的成员,会自动弹出继承自承自Object的所有

29、方法的所有方法44什么是多态什么是多态简单来说,多态是具有表现多种形态的能力的特征 同一个实现接口,使用不同的实例而执行不同操作彩色打印机彩色打印机打印机打印机黑白打印机黑白打印机打印效果:彩色打印效果:彩色打印效果:黑白打印效果:黑白打印打印打印打印45publicclassTeacherpublicvoidgiveLesson()System.out.println(知识点讲解知识点讲解);System.out.println(总结提问总结提问);publicclassTestpublicstaticvoidmain(Stringargs)HQ3hq=newHQ3();hq.judge(n

30、ewAccpDBTeacher();3如何实现多态如何实现多态1、子类重写父类的方法2、编写方法时,使用父类定义的方法3、运行时,根据实际创建的对象类型动态决定使用哪个方法publicclassDBTeacherextendsTeacherpublicvoidgiveLesson()System.out.println(启动启动SqlServer);super.giveLesson();1publicclassHQ3publicvoidjudge(Teachert)t.giveLesson();246什么是什么是Java接口接口一个Java接口是一些方法特征的集合,但没有方法的实现public

31、interfacePCIpublicvoidstart();publicvoidstop();classSoundCardimplementsPCIpublicvoidstart()System.out.println(Dudu.);publicvoidstop()System.out.println(Soundstop!);Java接口中定义的方法在不同的地方被实现,可以具有接口中定义的方法在不同的地方被实现,可以具有完全不同的行为完全不同的行为这是这是Java接口,相当于主接口,相当于主板上的板上的PCI插槽的规范插槽的规范classNetworkCardimplementsPCIpubl

32、icvoidstart()System.out.println(Send.);publicvoidstop()System.out.println(Networkstop!);47什么是什么是Java接口接口publicclassAssemblerpublicstaticvoidmain(Stringargs)PCInc=newNetworkCard();PCIsc=newSoundCard();nc.start();sc.start();可以使用可以使用Java接口标识类型接口标识类型运行时,根据实际创建的对象类型调用相应的方法实现运行时,根据实际创建的对象类型调用相应的方法实现Dudu.S

33、end.控制台输出控制台输出2148多态与接口的区别多态与接口的区别相同点:都是为了实现程序的可扩展和可维护性.不同点: 多态:指实现同一个接口,使用不同的实例而执行不同的操作,必须存在继承关系. 接口:存在共同的方法特征,但对方法有各自不同的实现,不必存在继承关系.49this 关关键字字用于任何实例方法内,指向当前对象this 的值指向对其调用当前方法的对象 this 关键字可在需要当前类类型的对象引用时使用 this 关关键字的示例字的示例class Pixel int x;int y; void init (int x, int y) this.x = x; this.y = y; p

34、ublic static void main (String args) Pixel p = new Pixel(); p.init (4,3); 对象的引用51什么是常量什么是常量常量是一种标识符,它的值在运行期间恒定不变常量标识符在程序中只能被引用,而不能被重新赋值常量常量圆周率圆周率PI圆周率圆周率PI代码表示代码表示方式方式publicstaticfinaldoublePI=3.14159265358979323846;用法用法将将ang角度转换成径度角度转换成径度publicstaticdoubletoRadians(doubleang)returnang/180.0*PI;52Ja

35、va中常量的定义规则中常量的定义规则加入final 关键字代表常量, 加入static 关键字代表类变量尽量使用含义直观的常量来表示那些将在程序中多次出现的数字或字符串publicclassStudentpublicstaticfinalintFEMALE=1;/代表女性代表女性publicstaticfinalintMALE=2;/代表男性代表男性privateintsex;/性别性别publicvoidsetSex(intsex)if(sex=FEMALE)System.out.println(这是一名女学生这是一名女学生);elseif(sex=MALE)System.out.print

36、ln(这是一名男学生这是一名男学生);this.sex=sex;53在在Java接口中声明常量接口中声明常量在Java 接口中声明的变量在编译时会自动加上static final的修饰符,即声明为常量,因而Java接口通常是存放常量的最佳地点publicinterfaceSchoolTypepublicstaticfinalStringschool1=“国立大学国立大学;publicstaticfinalStringschool2=“民办大学民办大学;publicinterfaceSchoolTypeStringschool1=“国立大学国立大学;Stringschool2=“民办大学民办大学

37、;等同于等同于54OO思想总结思想总结OO基本基本特征特征定义定义具体实现方式具体实现方式优势优势封装封装隐藏实现细节,对外提供隐藏实现细节,对外提供公共的访问接口公共的访问接口属性私有化、添加公有的属性私有化、添加公有的setter、getter方法方法增强代码的可维增强代码的可维护性护性继承继承从一个已有的类派生出新从一个已有的类派生出新的类,子类具有父类的一的类,子类具有父类的一般特性,以及自身特殊的般特性,以及自身特殊的特性特性继承需要符合的关系:继承需要符合的关系:is-a1、实现抽象(抽、实现抽象(抽出像的部分)出像的部分)2、增强代码的可、增强代码的可复用性复用性多态多态同一个实

38、现接口,使用不同一个实现接口,使用不同的实例而执行不同操作同的实例而执行不同操作通过通过Java接口接口/继承来定义继承来定义统一的实现接口;通过方法统一的实现接口;通过方法重写为不同的实现类重写为不同的实现类/子类定子类定义不同的操作义不同的操作增强代码的可扩增强代码的可扩展性、可维护性展性、可维护性55访问修饰符访问修饰符信息隐藏是 OOP 最重要的功能之一,也是使用访问修饰符的原因信息隐藏的原因包括:对任何实现细节所作的更改不会影响使用该类的代码防止用户意外删除数据此类易于使用访问修饰符访问修饰符访问修饰符访问修饰符访问修饰符访问修饰符privateprotectedpublic默认56

39、访问修饰符访问修饰符该类或非该类均该类或非该类均可访问可访问public只有该类可以访只有该类可以访问问private相同数据包中的相同数据包中的类可以访问类可以访问默认默认该类及其子类的该类及其子类的成员可以访问,成员可以访问,同一个包中的类同一个包中的类也可访问也可访问protected57访问修饰符访问修饰符访问修饰符可访问性位置private默认protectedpublic同一个类是是是是同一个包内的类否是是是不同包内的子类否否是是不同包并且不是子类否否否是58方法修饰符方法修饰符方法修饰符方法修饰符方法修饰符方法修饰符staticfinalabstract59static 修饰符修

40、饰符static修饰符修饰的方法叫静态方法目的使该方法独立于类的实例,使用类去访问,而不是类实例,所以也叫类方法60static 修饰符修饰符调用静态方法的语法为: classname.methodname( ); 规规规规 则则则则可以调用其他静态方法必须访问静态数据不能使用super 或 this 关键字61final 修饰符修饰符 finalfinal不能修改变量不能修改变量子类不能重写方法子类不能重写方法62abstract 修饰符修饰符由abstract修饰的方法叫抽象方法;由abstract修饰的类叫抽象类抽象方法必须声明在抽象类中抽象方法语法:abstract type meth

41、od_name(parameter_list);声明抽象类语法: abstract class 使用:父类中的某些抽象不包含任何逻辑,并需要在子类中重写,子类提供这种抽象方法的实现细节63abstract 修饰符修饰符抽象类可以具有指向子类对象的对象引用 abstractabstract抽象类不能被实例化构造方法 和 static方法不能是抽象的父类的抽象方法往往在子类中实现 64JAVA小小应用程序用程序-Java Applet它是嵌入在Web页上供浏览器运行的程序,也可放在服务器上供客户端下载使用,每个小应用程序继承java.applet.Applet一、小应用程序建立到运行的4个步骤: 1、用Java语言编写小应用程序的源程序。 2、小应用程序翻译成字节码。 3、将小应用程序的字节码嵌入到Web页中,设计一个指定小应用程序的HTML文件 使用标记 4、在支持Java的浏览器上运行。二、熟悉APPLET类的基本方法作用。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号