《Java基础培训教程摘抄.docx》由会员分享,可在线阅读,更多相关《Java基础培训教程摘抄.docx(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Javaa基础培培训教程程老虎工作作室 沈沈伯青 编著人民邮电电出版社社第二章 运行环环境安装装与测试试P5 Javva不进进提供了了一个运运行环境境,而且且还提供供了一个个免费的的Javva软件件开发工工具集JJSDKK(Jaava Sofftwaare Devveloopmeent Kitt),有有了这个个工具集集就可以以在Jaava标标准平台台(J22SE)上上进行JJavaa代码程程序的开开发。JJSDKK最初被被成为JJavaa Deevellopmmentt Kiit(JJDK),最最开始发发行的版版本是11.1,后后来随着着Javva的发发展,JJSDKK 的版版本逐渐渐增加,有
2、有了1.2版本本、1.3版本本等,目目前已经经升级到到1.44版本。在Jaava中中,统一一称1.2版本本或更高高的版本本为Jaava 2。JJSDKK包括生生成Jaava中中最基本本的小应应用程序序和应用用程序所所需要的的所有工工具和标标准Jaava类类库。Javaa平台分分为三种种,他包包括Jaava标标准平台台(J22SE,JJavaa 2 Plaatfoorm Staandaard Ediitioon)、Javva企业业级平台台(J22EE,JJavaa 2 Plaatfoorm Entterpprisse EEdittionn)和JJavaa小型平平台(JJ2MEE,Jaava 2
3、PPlattforrm MMicrro EEdittionn),其其中J22EE和和J2MME平台台上的应应用实现现都是要要建立在在J2SSE平台台基础之之上的。P9 现已将将JSDDK安装装在“D:JJSDKK14”目录下下,可以以根据路路径找到到该目录录并查看看该目录录中的内内容,如如图2-9所示示。可以看到到目录下下有5个个子目录录分别是是“binn、deemo、inccludde、jjre、libb”,以及及5个文文件。对对于初学学者来说说,需要要注意的的是“binn”目录和和“libb”目录下下的内容容。双击“bbin”目录,发发现有223个后后缀名为为“.exxe”的实用用程序。这
4、些都都是开发发工具库库所自带带的工具具。对于于初学者者来说血血药了解解和掌握握的是88个工具具,见表表2-11。其中中读者能能够很快快遇到并并需要掌掌握的工工具是:Javvac、Javva、AApplletvviewwer、Javvadooc,其其次是JJar,然然后是JJdb、Javvap、Javvah。对于剩剩下的115个工工具,读读者可以以查询相相关的帮帮助文件件。表2-11 JSDDK的88种主要要工具名称解释JavaacJavaa编译器器,将JJavaa源文件件代码转转换成JJavaa字节代代码,编编译后缀缀名为“.jaava”的根文文件,生生成一个个新的后后缀名为为“.cllass
5、s”的类文文件,其其文件名名和根文文件的文文件名相相同JavaaJavaa编译器器,用来来执行生生成的后后缀名为为“.cllasss”的类文文件,即即执行JJavaa应用程程序自己己代码Applletvviewwer小应用程程序的JJavaa浏览器器,主要要是执行行后缀名名为“.httml”或者是是“.httm”的文件件,这些些文件的的内容嵌嵌套着JJavaa小应用用程序类类JavaadoccJavaa说明工工具,根根据Jaava源源代码及及其说明明语句生生成相关关的HTTML文文档,编编程者可可以很方方便的通通过HTTML文文档来了了解Jaava源源代码的的功能、方法及及其继承承关系JdbJ
6、avaa调试器器,可以以逐行执执行程序序、设置置断点和和检查变变量JavaapJavaa反汇编编器,显显示编译译类文件件中可访访问功能能和数据据,同时时显示字字节代码码的含义义JarJavaa档案文文件生成成器,用用它可以以生成的的后缀名名为“.jaar”文件,JJAR文文件可以以在一个个压缩文文件中发发布多个个Javva类和和资源,这这个资源源可以包包括哟GGIF图图片资源源、HTTML文文档资源源等Javaab头文件生生成器,产产生可以以调用的的Javva过程程的C过过程,也也可以建建立能被被Javva程序序调用的的C过程程的文件件头P10 虽然已已经安装装了JSSDK,也也同时安安装好了
7、了Javva运行行环境,但但是Jaava语语言是跨跨平台的的,无论论在什么么平台或或者操作作系统下下的文本本编辑器器里都可可以编写写“.jaava”代码,最最终都要要经过JJavaac编译译器将源源代码转转换成与与平台无无关的“.cllasss”字节代代码,这这是Jaava语语言编程程的一个个重要特特性,也也是其体体现出跨跨平台优优越性的的保证。本书中中对“.jaava”代码的的Javvac编编译器所所执行的的操作也也是在WWinddowss操作系系统中的的【命令令提示符符】窗口口下进行行的。【命命令提示示符】窗窗口下只只能执行行缺省的的DOSS命令,如如cd、dirr、cllearr等,如如
8、果要执执行Jaavacc、Jaava、Javvadooc等命命令,则则需要进进行额外外的环境境变量的的设置。表2-22 本书常常用的基基本DOOS命令令名称解释DirDOS查查询命令令,用来来查询所所在目录录的具体体文件信信息等cd用来进入入某一个个文件夹夹,其中中“”表示文文件夹名名称,“cd”和文件件夹名称称之间有有一个空空格cdd.退出当前前文件夹夹目录进进入上一一级目录录,其中中“”表示当当前所在在的文件件夹名称称%:&转换盘符符操作,从从“%”盘符转转入到“&”盘符,其其中“%”“&”均为盘盘符,它它们一般般代表“C,DD,E”例如如“C:D”表示从从C盘转转到D盘盘P11设设置Pa
9、ath变变量:首先打开开我的电电脑右键键属性高高级选项项卡中的的环境变变量,找找到系统统变量分分组框中中的“Patth”系统变变量,保保持变量量名的“Patth”不变,在在变量值值的文本本编辑框框内的末末尾添加加“;D:JSSDK114bbin”的字样样,这样样就可以以在命令令提示符符窗口中中执行JJavaac、JJavaa、Jaavaddoc等等命令了了。提示:这这里假设设JSDDK已经经安装在在D盘的的JSDDK144目录下下,将“binn”目录添添加到系系统变量量“Patth”中,确确保了“binn”目录下下的可执执行文件件可以在在命令提提示符窗窗口下运运行。只设置了了Patth环境境变
10、量对对运行所所有可执执行文件件还是不不够的,因因为在“.jaava”代码中中,还可可能引用用JSDDK缺省省的几个个Javva类包包,否则则用“Javvac编编译器”无法将将代码成成功编译译而生成成“.cllasss”类文件件,所以以Javva还要要利用另另一个环环境变量量CLLASSSPATTH。P12 添加CCLASSSPAATH环环境变量量:Javaa运行环环境从“CLAASSPPATHH”环境变变量中寻寻找到要要执行的的Javva了。如果设设置不当当,则可可能遇到到各种因因为找不不到指定定的类而而引起的的各种错错误。在环境变变量对话话框中单单机系统统变量分分组框的的新建按按钮,新新建变
11、量量名为“CLAASSPPATHH”变量值值为“.;DD:JJSDKK14libbdtt.jaar;DD:JJSDKK14libbtooolss.jaar”的系统统变量。这里需需要注意意的是变变量值中中最前面面的两个个符号:一个点点号“.”和一个个分号“;”不能漏漏掉。P13 环境测测试:在命令提提示符中中输入javaa verrsioon可以判定定JSDDK 版版本、jjavaa运行环环境版本本等。除除此之外外,还可可以输入入以下命命令:javaa hjar hjavaadocc hjavaac h来查询执执行程序序的相关关参数使使用方法法。P14程程序测试试:新建文本本文档输输入以下下程序
12、,publlic claass tesstHeelloo ppubllic staaticc vooid maiin(SStriing argg) SSysttem.outt.prrinttln(Heelloo,这是是一个测测试!);/中文文状态下下输入的的分号 /mmainn()/*ttesttHelllo */将文件命命名为“tesstHeelloo.jaava”。保存存位置是是“E:proograam002ttesttHelllo.javva”。文件保存存成功之之后,在在命令提提示符窗窗口中进进入到“E:proograam002”目录。输入的的命令那那个依次次为:E:cd pproggr
13、ammcd 002这样就进进入了“E:proograam002”目录,在在次目录录下依次次输入如如下命令令:dirjavaac ttesttHelllo.javvajavaa teestHHelllodir这时会发发现目录录下多了了一个“tesstHeelloo.cllasss”文件,这这是Jaavacc编译器器将源代代码编译译成字节节代码生生成类文文件的结结果。显显示输出出的“Helllo,这这是一个个测试!”是Jaava编编译器直直接执行行Javva应用用程序字字节代码码的结果果。P16 Javva应用用程序流流程:一个Jaava应应用程序序首先是是经过文文本编辑辑器的编编辑工作作得到JJ
14、avaa源代码码,源代代码经过过Javvac编编译器编编译之后后产生JJavaa类文件件,再经经Javva编译译器编译译执行得得到输出出程序。其中JJavaadocc执行程程序可以以对Jaavacc源代码码进行操操作,生生成关于于Javvac源源代码的的说明文文档,这这种文档档是以HHTMLL格式输输出的;另外JJavaap执行行程序可可以对JJavaa类文件件进行操操作,得得到的是是对Jaava类类文件反反编译的的结果,同同时也看看到Jaava源源代码的的方法分分布情况况。P17 建档应应用程序序Javvadooc:Javaadocc是建档档应用程程序。它它将能源源代码自自动建档档,这样样做
15、的好好处是在在源代码码进行一一定格式式的说明明之后,可可以将这这些说明明自动传传输到HHTMLL文件中中,是开开发者直直接从生生成的JJavaadocc文档中中查找到到相关类类一集相相关类的的方法、属性变变量。代代码程序序中的说说明字段段是需要要放在“/*”和“*/”之间的的,这样样Javvadooc编译译器才可可以识别别这些说说明字段段。/*这这是一个个有说明明的Jaava应应用程序序*/publlic claass tesstNooteHHelllo /* *这是ttesttNotteHeelloo类的主主函数,他他主要是是输出一一句话。 */ ppubllic staaticc vooi
16、d maiin(SStriing argg) SSysttem.outt.prrinttln(Heelloo,这是是一个有有说明的的测试!); /mmainn()/*tesstNooteHHelllo*/将以上文文字生成成文档时时,在命命令提示示符窗口口“E:proograam002”目录下下需要输输入:javaadocc teestNNoteeHelllo.javva这里不必必先将“tesstNooteHHelllo.jjavaa”文件通通过Jaavacc编译器器编译成成“tesstNooteHHelllo.cclasss”文件。最后输出出了100个新的的HTMML文件件和1个个“pacck
17、agge-llistt”文件以以及1个个样式单单(CSSS)文文件,这这个CSSS文件件的作用用是包含含HTMML页面面的格式式信息。是修饰饰或者约约束HTTML文文件显示示格式的的。打开开“tesstNooteHHelllo.hhtmll”文件,则则可以看看到代码码程序中中的文档档说明一一集次代代码类的的摘要信信息。P18 反汇编编器Jaavapp: Javvap工工具可以以查询任任何类,检检查类的的方法。它只在在类文件件也就是是“.cllasss”文件生生成之后后进行操操作,也也就是说说它操作作的对象象必须是是类文件件,仅接接受类名名,实际际操作是是在命令令提示符符窗口“E;proogra
18、am002”目录下下输入:javaap ttesttNotteHeelloo得到的清清单信息息为:Comppileed ffromm teestNNoteeHelllo.javvapubllic claass tesstNooteHHelllo eexteendss jaava.lanng.OObjeect ppubllic tesstNooteHHelllo(); ppubllic staaticc vooid maiin(jjavaa.laang.Strringg);这里显示示了两个个方法,ttesttNotteHeelloo()和和maiin()。tesstNooteHHelllo()成
19、成为缺省省的构造造函数,这这是一个个特殊的的方法,如如果在源源代码中中没有特特殊指定定该类的的构造方方法,则则这个没没有入口口参数的的缺省的的构造方方法将会会自动的的在Jaavapp中生成成,而mmainn()方方法是源源代码中中的。这这样通过过Javvap执执行程序序操作也也可以看看到源代代码的方方法构造造情况。Javaap也选选用“h”方法来来查询其其参数使使用方法法。当选选择参数数为“c”时:javaap c ttesttNotteHeelloo结果显示示基础的的字节代代码的序序列和方方法清单单。Comppileed ffromm teestNNoteeHelllo.javvapubll
20、ic claass tesstNooteHHelllo eexteendss jaava.lanng.OObjeect ppubllic tesstNooteHHelllo();publlic staaticc vooid maiin(jjavaa.laang.Strringg);Methhod tesstNooteHHelllo() 0 alooad_0 1 invvokeespeeciaal 1 4 retturnnMethhod voiid mmainn(jaava.lanng.SStriing) 0 gettstaaticc 22 3 ldcc 33 5 invvokeevirrtua
21、al 4 8 retturnn实际上这这些命令令就是经经过Jaavapp反汇编编生成的的源代码码,但和和真正的的“.jaava”源代码码有很大大的出入入,这是是因为将将字节代代码再转转换成源源代码必必然会有有损耗而而和实际际不符,但但大体表表现出源源代码中中方法的的具体信信息。因因为“.cllasss”类文件件无法用用一般的的文本编编辑器查查看,所所以使用用者在不不知道源源代码的的具体信信息时常常常采用用此方法法来了解解一个类类文件中中的信息息。第三章 面向对对象和类类的概念念P22 相似对对象的抽抽象称之之为类(CClasss),它它有着对对象的特特征:属属性和行行为。也也就是说说,类是是相
22、似或或者相同同对象的的一个抽抽象的集集合,这这个集合合包括了了一些对对象所共共有的性性质。另另一方面面,通过过类可以以获得一一个对象象,称之之为对象象的实例例(Innstaancee),一一个“类”就像是是一个压压制模型型的板子子,可以以做出许许许多多多类似但但独立的的个别对对象。因因此要使使用对象象,需要要首先建建立一个个类,再再通过“对象建建立”的动作作产生所所需对象象。而每每一个产产生的对对象就是是一个独独立的个个体,拥拥有自己己的状态态变量值值。P24 一个类类的结构构用“修饰符符+cllasss+类名名”和一对对大括号号来描述述。例如如程序清清单3.1,类类的类体体为:publlic
23、 claass vehhiclle /*vvehiiclee*/类中定义义的4个个属性,它它们为“jouurneey、wwheeelNuum、lloaddNumm、drriveerSppeedd”和两个个方法vvehiiclee()和和driiverr()方方法。属属性的定定义用“修饰符符+数据据类型+声明变变量+分分号”来描述述,例如如:publlic flooat jouurneey;方法的定定义用“修饰符符+返回回标志+方法名名”和一对对小括号号来描述述,例如如:publlic voiid ddrivverAAt(iint speeed) / driiverrAt()其中属性性定义和和方
24、法的的定义及及其实现现都应该该放在大大括号内内,而代代码子句句的实现现都需要要放在方方法的小小括号内内,这样样就定义义了一个个类。值得注意意的是ddrivverAAt()方方法,次次方法提提供了一一个入口口参数“speeed”,这是是为司机机向机动动车发布布命令留留下了入入口。当当司机调调用机动动车对象象要求以以某一速速度行驶驶时,将将调用ddrivverAAt()方方法。这这个方法法在判定定司机要要求的速速度小于于最大行行驶速度度之后指指定速度度进行行行驶,否否则将行行驶速度度定为440。if(sspeeed=60) ddrivverSSpeeed=440;elsee ddrivverSSp
25、eeed=sspeeed;P25 程序清清单3.2 “vehhiclleDrriveer.jjavaa”文本文文件publlic claass vehhiclleDrriveer ppubllic Strringg naame;/定定义司机机的名字字/*vehhiclleDrriveer类构构造函数数*/ ppubllic veehiccleDDrivver()namee = TOOM;/vvehiicleeDriiverr() /*vehhiclleDrriveer类对对象的wworkk方法*/publlic voiid wworkk() vvehiiclee v = nnew vehhic
26、lle();/生生成veehiccle类类的对象象v dd.drriveerAtt(455);/调用用v对象象所固有有的drriveerAtt()方方法/wworkk()publlic staaticc vooid maiin(SStriing arrr )/生成eehiccleDDrivver类类的对象象vd eehiccleDDrivver vd = nnew ehiicleeDriiverr(); vvd.wworkk(); /调调用vdd对象所所固有的的worrk()方方法/mmainn()/*vehhiclleDrriveer*/“vehhiclleDrriveer”类定义义了司机机
27、姓名这这一属性性,并在在其构造造函数vvehiicleeDriiverr()方方法中设设定了司司机的名名字为“TOMM”,同时时还设定定了司机机的工作作行为方方法woork(),在在这个方方法中,首首先生成成了“vehhiclle”类的一一个对象象v,接接着这个个对象调调用了“vehhiclle”类的实实例所固固有的方方法drriveerAtt(),而而且还对对行驶的的速度进进行了赋赋值,用用来告诉诉机动车车的对象象v需要要按照445单位位(单位位具体是是什么需需要根据据实际代代码所要要解决的的问题来来定)的的速度行行驶。这这就是在在worrk()方方法中完完成了对对象的生生成,以以及对象象之
28、间的的调用和和消息传传递。和“veehiccle”类不同同,“vehhiclleDrriveer”类多了了一个静静态的mmainn()方方法。在在Javva编程程中规定定,当一一个类有有maiin()方方法时,它它就可以以被作为为应用程程序进行行使用。而此例例的maain()方方法中,生生成了一一个“vehhiclleDrriveer”类的对对象vdd,这一一操作使使用程序序中的代代码子句句:vehiicleeDriiverr vdd = neww veehiccleDDrivver();来完成。它的含含义是指指生成了了一个名名字叫TTOM的的司机对对象。vvd.wworkk()是是表明了了司
29、机开开始工作作,工作作的内容容就是:以455单位的的速度驾驾驶一部部已经行行驶了1100.3kmm的四轮轮机动车车。P26 因为只只有“vehhiclleDrriveer”类文件件有maain()方方法,所所以只能能执行它它一个。用Jaava工工具来执执行。命命令如下下:javaa veehiccleDDrivver(自己注注:没有有方法mmainn()就就不能执执行)提示:如如果需要要编译一一个目录录下的多多个“.jaava”文件,可可以分别别用jaavacc编译器器进行编编译,也也可以采采用“javvac *.jjavaa”命令来来一起编编译,这这样节约约了时间间。如果果“.jaava”文
30、件很很多而且且代码编编写错误误可能会会比较多多,则不不提倡用用此种方方法,因因为这样样可能会会产生很很多编译译错误信信息,反反而影响响了效率率。P27 在Jaava术术语中,祖祖先称之之为“超类”,而子子孙称之之为“子类”。“超类”是“子类”的子集集。P29 如果要要调用一一个对象象的方法法,Jaava解解释程序序会自动动检查定定义该对对象的类类中的方方法,如如果该类类有这个个方法,则则Javva解释释程序会会自动调调用它。如果在在这个类类中没有有找到指指定的方方法,则则Javva解释释器会自自动寻找找该类的的超类中中的方法法,依此此类推,直直到找到到这个方方法调用用它。如如果查找找所有的的关
31、于该该类的超超类而最最终也没没找到这这个方法法,Jaava解解释器才才会报告告找不到到该方法法。查找找方法的的顺序是是从底层层到顶层层,也就就是说按按照从子子类到超超类顺序序的。P30 接口:尽管单重重继承比比较简单单好用,而而且也使使我们比比较容易易理解和和设计类类之间以以及类所所实现的的功能之之间的关关系。然然而,它它也有一一定的限限制,特特别是当当需要从从类层次次结构的的不同分分支重复复类似特特性的时时候,JJavaa通过接接口解决决了这一一问题。Javaa中的接接口(IInteerfaace)比比类更抽抽象。它它只定义义了一些些公用的的行为或或操作而而无任何何的实现现。而这这类的行行为
32、或操操作,可可被称为为抽象方方法(AAbsttracct MMethhod)。因此任任何的类类,只要要它需要要皆可直直接加入入其所需需的Innterrfacce。同同时一个个类虽然然仅可继继承一个个超类,但但它却可可实现多多个接口口,而这这样的方方法在JJavaa的程序序实现里里扮演了了一个相相当重要要的角色色。一个超类类A有两两个子类类分别是是C和DD。其中中C有着着C1和和C2两两种特性性,而DD有着DD1和DD2两种种特性。现在想想创建一一个新的的类E,它它有C的的C1属属性和DD的D11属性,因因为Jaava是是采用单单重继承承的,而而且C和和D是两两个不同同的分支支,所以以不可能能像
33、多重重继承那那样用EE来同时时继承CC和D。接口的的出现可可以解决决这个问问题。这这种解决决方法之之一就是是创建一一个接口口来定义义C1和和C2的的行为,然然后在创创建一个个类来实实现这个个接口从从而生成成一个新新的类。可以看出出接口的的出现是是对类的的一个有有效补充充,两者者几乎可可以同等等对待,它它们之间间的差别别就在于于接口不不能像类类那样产产生实例例。P31 接口的的创建:程序清单单3.44 “E.jjavaa”文本文文件publlic intterffacee Epubllic staaticc fiinall innt EE1 = 1000; /EE1属性性publlic voii
34、d CC1(); /C1行行为方法法publlic voiid DD1(); /D1行行为方法法/*E*/程序清单单3.44中定义义了E接接口,它它和定义义一个类类很相似似,只是是在定义义方法之之后没有有方法的的具体实实现操作作,而是是以一个个分号就就结束了了定义。实际上上这就是是进行了了接口的的行为方方法的声声明。接接口没有有maiin()方方法,也也不能生生成新的的实例,但但是它编编写之后后也是保保存成“.jaava”文件。保存的的文件名名和接口口名保持持一致。在通过过javvac编编译器编编译之后后也生成成“.cllasss”文件,这这一点也也和类相相似。P31 接口的的扩展;接口的扩扩
35、展也采采用关键键字“exttendds”来进行行实现。所以假假设创建建一个FF接口,它它是继承承E接口口的。则则可以用用以下代代码来声声明。publlic intterffacee F exttendds EE/接口FF的内容容 如果需要要创建一一个G接接口,它它是分别别继承EE接口和和接口的的,则可可以用以以下代码码来声明明。publlic intterffacee G exttendds EE,F/接口GG的内容容在多重继继承中被被继承的的父类接接口之间间用逗号号隔开。P32 接口的的实现:使用接口口来定义义新的类类,需要要用“impplemmentts”来完成成。例如如编写一一个Eccl
36、asss类,它它有C11行为方方法和DD1行为为方法,则则只要实实现E接接口就可可以了。Ecllasss类程序序见程序序清单33.5.程序清单单3.55 “Ecllasss.jaava”文本文文件publlic claass Ecllasss immpleemennts Epubllic voiid CC1()/实现CC1行为为方法 SSysttem.outt.prrinttln(C1方方法实现现);/CC1()publlic voiid DD1()/实现DD1行为为方法 SSysttem.outt.prrinttln(D1方方法实现现);/DD1()/*Ecllasss*/代码“ppubll
37、ic claass Ecllasss immpleemennts E”不仅声声明了一一个类EEclaass,同同时还声声明这个个类要实实现E接接口,这这里用到到了关键键字“impplemmentts”,而且且在这个个类中重重写了CC1()和和D1()两两个方法法,编写写了代码码进行了了实现。这样就就完成了了Ecllasss类的创创建工作作。这个个类可以以被其他他子类所所继承,并并且也可可以生成成这个类类的对象象。提示:读读者也许许会认为为可以直直接编写写Ecllasss类而不不用实现现接口,这这样自然然省去了了接口的的定义,但但是在实实际应用用中,接接口恰恰恰是非常常有用的的,在接接口中会会定
38、义很很多方法法,不同同的类可可以按照照自身的的性质继继承接口口,各取取所需,实实现不同同的方法法,这样样编写出出的类集集合的层层次才会会更加清清楚,提提高效率率。一个要编编写的类类可以实实现多个个接口,但但是要确确保所有有接口的的方法都都被实现现,尽管管有些接接口的方方法不需需要,也也要编写写一个没没有代码码的空方方法进行行实现。例如EEclaass类类中就需需要将EE接口中中声明的的方法一一一实现现,如果果缺少了了E1()方方法或者者是D11()方方法,EEclaass类类均不能能编译成成功。另另外在实实现接口口中定义义的类之之后,所所编写的的类也可可以编写写自己的的方法。例如编编写一个个E
39、tootallClaass类类,这个个类不但但实现了了E接口口和M接接口,同同时也有有自己的的方法EE1()。程序清清单3.6给出出了M接接口的定定义,程程序清单单3.77给出了了完整的的EtootallClaass类类的定义义。程序清单单3.66 “M.jjavaa”文本文文件publlic claass EtootallClaass impplemmentts EE,Mpubllic voiid CC1()/实现CC接口CC1行为为方法Systtem.outt.prrinttln(C接口口C1行行为方法法实现);/CC1()publlic voiid DD1()/实现DD接口DD1行为为方
40、法 SSysttem.outt.prrinttln(D接口口D1行行为方法法实现);/DD1()publlic voiid MM1()/实现MM接口MM1行为为方法 SSysttem.outt.prrinttln(M接口口M1行行为方法法实现);/MM1()publlic voiid EE1()/自身的的方法实实现 SSysttem.outt.prrinttln(自身的的方法实实现);/EE1()publlic staaticc vooid maiin(SStriing a ) EEtottalCClasss ee = neww EttotaalCllasss(); ee.C11(); ee.
41、D11();e.M11();e.E11();/mmainn()/*EtootallClaass*/程序清单单3.77中用代代码“pubblicc cllasss EttotaalCllasss immpleemennts E,MM”完成了了“EtootallClaass”类的声声明,同同时也声声明它要要实现EE接口和和M接口口,多个个接口中中用逗号号隔开。第4章 Javva语言言基础P35 变量的的定义包包括变量量名、变变量类型型和作用用域几个个部分。P36 变量的的作用域域是指一一个变量量可以被被访问的的代码程程序段。声明一一个变量量的同时时也就指指明了变变量的作作用域。按作用用域来分分,变
42、量量可以有有下面几几种:局局部变量量、类变变量、方方法参数数、例外外处理参参数。每每一种变变量都有有其一定定的应用用场合和和作用域域。a局部变变量在方方法或方方法的一一块代码码中声明明,它的的作用域域为它所所在的代代码块,即即整个方方法或方方法中的的某块代代码。b类变量量是在类类的开始始声明中中创立,而而不在类类的某个个方法中中声明,因因此它的的作用域域是整个个类。c方法参参数传递递给方法法,它的的作用域域就是这这个方法法。d例外处处理参数数传递给给例外处处理代码码,它的的作用域域就是例例外处理理部分。P36 Strringg表示字字符型常常量。P37 局部变变量在创创建之后后必须进进行变量量
43、赋值,否否则程序序将无法法编译,所所以给局局部变量量赋值是是编程者者一个良良好的习习惯。这这种习惯惯的延伸伸是给类类变量进进行初始始值赋值值,尽管管有时候候类变量量对初始始值赋值值不是那那么重要要。P37 常量:常量是一一种特殊殊的变量量,所以以它的声声明是和和变量的的声明一一致的,只只是需要要在变量量的声明明类型前前加“finnal”关键字字来表明明此变量量是一个个常量,同同时一个个常量需需要进行行初始值值的确定定。例如如创建数数学公式式中的圆圆周率这这一常量量。finaal ddoubble PI = 33.144159926;常量的名名称一般般都是大大写的,例例如圆周周率一般般用大写写“
44、PI”而不用用小写的的“pi”。但是是这并不不是必须须的,这这只是一一个良好好的Jaava编编程习惯惯,看到到全部都都是大写写的变量量的时候候会想到到这可能能是一个个常量,从从而使程程序更加加的容易易被理解解。P38 基本数数据类型型:整型变量量的类型型有byyte、shoort、intt和loong 4种种。innt类型型是最常常使用的的一种整整数类型型。它所所表示的的数据范范围为664位处处理器。但对于于大型计计算,常常会遇到到很大的的整数,超超出innt类所所表示的的范围,这这时要使使用loong类类型。由由于不同同的机器器对于多多字节数数据的存存储方式式不同,可可能是低低字节向向高字节
45、节存储,也也可能是是从高字字节向低低字节存存储,这这样,在在分析网网络协议议或文件件格时,为为了解决决不同机机器上的的字节存存储顺序序问题,用用bytte类型型来表示示数据是是合适的的。而通通常情况况下,由由于其表表示的数数据范围围很小,容容易造成成溢出,应应避免使使用。sshorrt类型型则很少少使用,它它限制数数据的存存储为先先高字节节,后低低字节,这这样在某某些机器器中会出出错。实实际中使使用哪一一个数据据类型完完全取决决于整数数的实际际大小,恰恰当的选选取数据据类型可可以节省省空间,提提高程序序的运行行效率。实数型数数据类型型有flloatt和dooublle两种种,它们们分别代代表着单单精度类类型和双双精度类类型。charr字符型型数据类类型用于于存储单单个字符符,例如如字母、数字、标点符符号和其其他符号号。boolleann布尔型型数据类类型用于于存放ttruee或者ffalsse关