全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf

所需积分/C币:48 2013-06-18 08:12:03 12.73MB PDF
0
收藏 收藏
举报

本书是一本折手书,需要下载后双面按短边旋转打印并对折后方可使用,本书讲解详细,并有习题跟踪,涵盖考试大纲,值得推荐
书1章Java语言记 1Jaa语亩筲介 1.2.2Jav的AP结构 4.壮性《也称鲁棒性 Java语言在编译和运行时都有比较严格的检査,过去许多绢程语冒的出错统计资料说明,最 Java是面向对象语言,对泉是客观事物的实体,对象与实体是一一对应的,它是很具体的慨 容易出错的是数据类型的不匹配和内存地址计算出错。Java在这方面有独特的措施。首先 念。在面向对象语育中,对狼是程序的基本单位。Java语言以类为程序的基本单位,类(C如ss) Java是一种强类型语言,即它在绵译和连接时进行大量的类型检查,防止不匹配数据类型的发 是具有某些共同特性实体的集合,是一种抽象的概念,它实质上是一种对象类型的定义,即对具 生,对非法数据类型都将在编译和解释时指出。其次,Java语言不允许使用指针访问内存,更不 有相同行为对象的一种抽象,说明该类型对象的性质。在Java语言中,类是具有某种功能的菲 允许使用指针数组访间内存。另外Java设计有自动收集垃圾功能,这不仅防止了内存地址计算 本模块的描述,它所提供的标准类库,为堉程所需的底层模块提供了當用的方法和接口,并将它 出错的阿题,也省去了编程时对内存进行分配的烦恼。 们分类封装成包,每个包又包括子包,形成树结构的类层次。类库主要包括核心j包、jaax和 oTg扩展包。 面向网络、分布式环境的Jaⅶa语言,对非法侵人的防范是至关重要的,Java语盲必提供充 Java核心包 分的安全保障,它在运行程序时,有严格的访问权限检查。对宁节代码执行前要检查,不允许使 Java核心包包括 用指针,可防止对内存的非法入侵,它是目前安全性最佳的语言 1)jva.lang包:封装所有编程应用的基本类,如 Object、Clas、 String, System、 Integer、 Thread 6.路平台(即体系结构中立 等。而 Object是所有类的根,它所包含的属性和方法被所有类继承,它的方法有 Java解释器采用生成与体系结构无关的字节代码指令的技术,只需安装Jaa运行系统就 protected Ohject clone() throws Clone Not SuppartedException,该方法生成当前对象的一个拷 可保证Java程序可以在网络的任何地方运行。这对Web应用是很 ,是必需的 贝,并将它返回。该对象类型是 Object,它要求使用该方法的类都必须实现 cloneable接 一个Java程斥可在不同的处理器上运行,大大地降低了软件维护成本,提高了软仲生产效率。 口,否则视为异常。 7.可移植性 public final Class getClass(),该方法返回当前对象的运行对象,该对象类型是Clas类 跨平台的特点保证了软件的可移植性。Jva的类库也具有可移植性。另外,Java本身的编 public final void notify(),该方法唤醒等待对象监视器的多个线程中的一个,是用于多线程 译器也用Jaa语言編写,运行系统的虚拟机用C语言实现,这样,Jaa系统本身也具有可移 技术的方法。 植性 public final wuid notify A(),该方法唤醒所有等待监视器的线程 8.解释执行 · public final void wait( long timeou) throws Interrupted Exception,该方法让当前线程放弃对象 Ja语言用字节码进行解释执行。字节本身带有许多编译时产生的信息,使它的连接过程 的锁定。形参 l1meonlt为超时,如当线程在等待屮被中听是异常 ● public final void wait() throws Interrupted Exception,该方法与wai(0)作用相同。 9.高性能 public int hash Code(),该方法返回一个 hesh code值。 60年代,由于硬件条件限制,给人们留下解释器很慢的印象,另外,在Jaa刚问世时JⅤM ● public boolean equals( Object obj),如当前对象与形参对象相同则返国true,否則返国血alse, (Java虚拟机)速度也不大理想,因此,至今在有些人的认知中也还存在误区,认为Java的缺点是 所有类型对象的比较都用此方法。 性能。实际上大量Java应用系统的成功案例,足以证明高性能已成为它的一大特点。字节 public String toString(),返回该对象信息的字符串,该字符串与对象相同类型。 码的设计很容易直接转换成一些特定CPU的机器码,其性能扃到使人不感觉到与编峄有什么差 protecled void finalize() I throws Throwable,该方法把对象从内存中清除,由垃圾收集器自动 别。而且编译时还可对字节码优化,生成高质量的代码。另外,它的多线程技术也是性能提高的 重要因素 publie final void wait( long Fiment, int nanos) thaws Interrupter Exception,该方法的形参 10.多鈸程 nano是十亿分之一秒的时间,超时计算更梢确。 多线程是Java程序的并发机制它能同步共享数括,处理不同的事件。网络连接需要时间, Cl68类是由编译器自动生成对象的一个特殊类,它伴随每个类。这个Cla对象包食所属 如在网上罘用事件循环机制会造成网上瓶颈。因此,多线程技术使网上实时交互很容易实现,为 类的所有信息,可通过Cls类的方法访问这些信息。Cl的方法有; 解决网上大数量的客户访问提供技术基础 public static Class for Name( String class Name) throws Class Not Found Exception,该方法返回形 11.动态性 参所指类的Ca对象,形参是一个类名 Wet应用系统中最大的挑战是快速变化的需求.即轼件的演化性。软件可扩充性、可仲缩 public String getName().该方法返回Cuss对象的名宇 性强,才能适应不断发展变化的环境。Java语言带动了软件构件化方法,本身的类库就可以自 public Class getSuperclass),返回一个数组,其虚员是C!las类的实例 出地增加新方法或实例。Jaa通过接口支持多重牲承,使类继承具有更灵活的扩展性。它还可 puhlic ClassI nader gel ClassLoader()对类加载内存 以随时插人构件和数据库 第】章Ja语官佩论 1.2Jawa的体系结构 12. Applet的特点 Applet是Java的一类特殊应用程序,它嵌人HML中,随主页发布到互联网上。利用它可 以实现多媒体的用户界面或复杂的计算。 Applet要求在支持Jaa的浏览器上运行,它使互联网 2}Jaa的箇系结 上的信息能很容易地实现动态性和交互性。Java类厍提供的 Applet类是所有 Applet程序的根 Aple类为编程准备好程序框架编写时只需填入相应的方法实现,无需考虑窗口创建、事件处 前面已说到Java以JVM为基础实际上,许多JVM也是由软件实现的。Javu的体系结构如 理等问题,大大简化了编程的复杂性 图1-2所示。最下层是移梢接口,由适配器和Java0s组 Java应用程序和Aple 113Java语言实现的机制 成保证』aa体系结构可以跨平台。虚机的上层是Jav 基本类和基本AP,它们都具有可扩展性。最上一层是Java 基本AP!|Java标准扩展A1 1.Jv虚拟机 应用程序和 Applet小程序。 Jaya基本类|Java标准扩屐类 Java语言的执行模式是半编译和半解释型。Java编写好的程序首先由编译器转换为标准 w时的产品主沉操作系统平台是Slm, Windows8和[m)都机 竿节代码,然后由Jaa虚拟机去解释执行。字节代码也是一种二进制文件,但不能直接在操 Macintosh。日前最新的JDK是jdk].4.2版,可到SUN公 移植接口 作系统上运行,它可看做虚拟机的机器码。虚拟机把字节代码程序与各操作系统和硬件分 司网站下载。本书第11章将叙述如何具体下载,全书所有 开,使Java程序独立于平台。虚拟机可以用软件实现,也可用硬件实现但在无线技术中,都 例子都用2sdk1.4.2版编写。 图1-2Jaa的体系结构 用硬件实现。 Java程序的下载和执行步骤如图1-1所示 1.2.1JDK目录结构 (1)程序经编译器得到字节代吗; 淘苋器 服务器 以}2sdk】.4.2版为例,解压后得目录结构如图1-3所示。 (2)浏览器与服务器连接,要求下载字节码文件 5 (3)服务器将字节代码文件传给客户机; (4)客户机上的解释器执行字节代码文件; vM|解释齧 绝译唐 文件 (5)在浏览器上显示并交互 文件是 虚拟机(VM)的执行过程有3个特点 AcoPYRIGHT 1)多线程; 客户机字节代码 Java程序 2)动态连接; 17 Nirrosoik Html dor..200381110:45 田 FEADME. tt 98Wx文件 2c0381110:45 (3)异常处理。 图1-lJaa程序的下载和执行 11.5617pFe 2.垃圾回收机制 在Java语言中,所有事物都封装在类中,雷要时创建类的实例(对象)来处理,这种动态的 图I-3JDK目录蚰构 实例都存储在内存堆中。为了充分利用资源,Jaa有一个系统级的线程,对内存的使用进行 嘏踪,使程序员从繁忙的内存管理中解放出来。该线程可以在系统空闲时对不用的内存进行 其中 回收。 lin日录下有编译器、解释器和许多工具(如服务器工具,IL、 package工具和jb等) 3.代码安全检测 emo目录下有各种演示例子 Java程序的安仝性体现在多个层次上,在编诼层,有语法粒查;在解释层,有字节码校验 include目录下是Win32子目录都是本地方法文件。 器、测试代码段格式和规则检查,访向权限和类型转换合法性检查,操作数堆栈的上溢或下 jre目录是Java程序运行用环搶的根目录,它下面有bin子目录,包括平台所用工具和库的 滥,代码参数类型合法性等;在平台层上,通过配置略,可设定访问资源域,而无需区分本地 可执行文件和ULL文件;ib子目录,包括ja远行环境的代码库、属性设置和资源文件,默认安 或远程。 装目录,安全管理 ihb日录下都是库文件。 src,aip是源码压缩 章Jv语言輥论 1.2Java的体系结构 义的名字,必须包括该类所在包的包名,而类名和包名之间的分隔符是“,”如类不在任何包中 · public Class getComponent'Type(),返凹数组成员的类型。如对線不是薮组,返回ml(空 类名是单独的。执行命令格式为:java!选项]类名[程序参数]。 其屮[选项]-cs检査目标文件是否过时,如已过时将自动从源文件重新编译 · public int gctModifiers(),返回类/接口的修饰符,如 public,na等。 D風性名=值定义属性名 · public Class cluss get DeclaringCluss().如当前对象是另一个类的虚员,则返回该类的cass debug将程序逛接到调试器。 对象,否则为空 ms分配内存切值解释器启动时分配给堆的内存大小。 puhlic Class[ ]get Superclass),返国的是一个数组数组成员是 Closs对象 分配最大内存值解释器为对象和数组,动态分配堆最大内存值,默认 publie Package getPackage(),返国当前类所在包 ic Class[] getInterfaces(),返回接口 noveril不进行字节代码验证。 public Object[ j getSigners(),返回信号 eriy进行字节代码验证,也是默认状态。 · public Field[] cet fields() throws Sccurity Exception,正常返回项,出错抛出异常 noasyncgc关闭异步垃圾收集器 public Method[] getMethods() throws Security Exception,正常返回方法结果,出错抛出异常。 8s栈尺寸设置毎个线程栈的尺寸,默认值为400KB。 · public Constructor[] get constructors) throws Security Exception,正常返回结构文件名,出错 8找尺寸设置每个线程本地栈的尺寸,默认值为128KB。 抛出异常。 v每装载一个类,打印一条信息 Systen类是一个特殊类,它是一个fna类,所有的方法都用类变量来调用,即对 System类不 osec无用单元收集器每释放一次内存,打印一条信息 可能实例化,它主要提供了标准输人/输出和系统环境信息的访问、设置。它的属性有 路径/目录。 public static final InputStream in,标准输人。 3) javadoc,exe:Java文档生成器,对Jaa源文件和包以MML格式产生AP文档。如出 public static final Print Steam out,标准输出 包名,它按类路径相关的对应包目录下找出所有,ja源文件,为每个类生成一个HTML文档井 public static final PrintStream err,标准错误输出 生成该包中所有类的HTML文档索引。默认时,这些HIML文件存人当前目录卜。执行命令的 有关环境信息的方法有: 格式: javadoc选项]包名或 javadoc[选项]文件名 · public static Properties getProperties( argument),返回系统环境倌息 其中[选项]- verbose显示行为信息。 · public static String set Properly( String keg, String value),设置系统变量的值 路径/目录指明包的路径/TML文件所存目录。 public static long current Time millis(),返回系铳时间(毫秒)。 (4)java Jaa类分解器,对, class文件提供字节代码的反汇编,并打印。默认时,打印 public static void exit( int slatus),强制关闭JVM并把状态satu传给撅作系统,aaus非零 类的公共域方法,构造方法、静态初值。执行命令格式:jBvp[选项]类名 时,是非正常退出 其中[选项]-c打印给出每个类中方法的vM指令。 · public static void c(),运行垃圾收集器。 spAth指明类蹄径 · public static void setIn( Inpu!Stream in),设置输入信息 -在原来打印信息上增加私有及保护方法和变量 · public static void setOut( PrintStream out),设置输出信息 (5)jdb,cκe:Java凋试器,如编译器返叵序代码错误,可用它对程斥进行謁试,它悬解邾 · publie static void sel Er( Printstream err),设置错误信息。 器的拷贝,类调试器。执行命令格式:jb[解释器选项l类名或jh[-host主机名]- password。 (2) Java.awt包:封装抽象窗口工具包,提供构建和管理用户图形界面功能 它包含的调试命令有: 3)java.aple包:为 Applet提供执行需要的所有类,主要是访问 Applet内容的通信类。 !!重复上一次轴入的命令。 (4)juva.i包;提供租序输入/输出文件操作的类。 eath[异常类]在激活异常时.自动产生一个断点 et包;提供程序执行网络通信应用及URL处理的类 lear[类名:行号]清除所指类的行断点 (6)java.mi包;提供程序远程方法调用所需的类 cont继指向行 (7) java. math包:提供程序常用的整数算术以及十进制算术的基本方法类。 down[n]在当前线程调用线处向下移功n个架默认移动L个框架。 (8)juv,utl包:提供实用程序类和集合类,如系统特性定义和使用、日期方法类、集合Col dump[标识]打印该对象的所有域值。 lection、Map、list、 Arrays等常用T具类。 i或quit退出j。 (9)jBv.sql包:提供访间和处理标准数据源数据的类。 ge运行垃圾收集器. 10) Javasecurity包:提供网络安全操作类。 笫1章Java语亩阮论 1.2Java的体系沽构 (11) java lext包:提供所有处理文木、期、数字以及非自然语言的消息操作的类。 多只能有一个 public类,其他类的个数不限。 (l2)jwa,beun包提供开发缃写 java beun所雷的类。 124Jva程序编写及运行的过程 扩展包Ja 扩展包Jaa有: Java有2类应用程序, Java Applieation和 Java Applet,前者是独立的应用程序,而后者嵌人 (1)jvax. naming包:提供命名腿务所需的类和接口。 HTML在浏览器中执行。下面针对这两类应用程序的编程和执行环境进行讨论 (2) Javar. swIng包:提供构建和管理应用陞序的因形界画的轻量圾的构件 1编写和运行 Java Applieation程序 (3)jaax,rmi包:提供远程方法调用的应用程序接目。 Java application应用程序的编写和执行分3步进行 (4) Javax, transaction包:提供事务处理所需的基木类。 1)编写源代码,首先要选一个无格式的文本缯辑器,如 windows的记事本、 UltraEdit等, (5) Juva,ound包:提供多媒体声音要求的MD输入/输出以及合成操作的基本类 千万不要用Wrd这类带格式的文本绝辑器因为它隐藏有许多Jv解释器不能识别的格式信 (6) Javax. accessibility包:提供用户界面构件之问相互访问机制的基本类 息。其次创建一个文件夹,如D: i javaProgram用来存放编写好的Jv程序。然后可打开编辑 3.Org包 器编写程序写完后以扩展名j存人新建文件夹D; avaprogrem中 omg包是一些有关国际组织的标准。 2)绢译源代码,只要下载了gsk】.4.2,它已包含有编译器jvae.exe对Java程庠进行编 4.Java语言的API文档 译,需要进人MD-D0s方式,在D0s提示符下輪人命令;edD: AjavaProgram,设置运行目录,再 Java语言的API文档是编程的好工具,当需要查询类库时,可到网站hp:/jiag.sm.com 输入编译命令:jac源文件全名(带扩展名,java),如没有语法错误,在文件夹D; avaprogtam j2se/].4.2/does/下载j2sdk-1_4_2-do后,找docs文件夹中的pi文件夹,打开 index.hml,进 中出现一个二步制字节码文件:源文件名,cl,它由绵译器自动生成。如源代码有语法错误,给 入选择包的界面,选任意包后,再从包中选类的超链接,就可看到该类的组成 出错误报告按行指出错误,维者按报告改正错误后,重复上面编译命令,直至编译成功 (1)包名 (3)解释执行利用j2k142的解释器jva.exe执行。仍在D0S方式下,输人命令:ja (2)类名。 源文件名{不带,java扩展名),;如执行成功,显示结果如执行有错,显示错误报告,设法排错直 (3)继承结构 至获得正确结果。 (4)类的实现接口。 2.编写和运行 Java applet应用租序 (5)类定义和说明 程序的编写和执行共分4步进行 (6)类的成员变量列表。 (1)编写源代码,这步与 Java application应用程序相同,缩辑一个源文件存入指定文件夹 (7)构造方法列表。 中。注意,该程序不含main方法 (8)方法返回类型及方法列表。 (2)编写HTML文件调用该小程序,以hm为扩展名存入相同文件夹 (9)方法详细列表及描述。 (3)编泽过程,与 java Application应用程序相同,编译应用程序的ja部分。 为了查找方便可把JDK1.4.2 dvcs \api \index.htm存人浏览器中,可随时查阅 4)解释执行,同样在DOS方式下,输人命令: appletviewer filename.hml(这里的lena 不要求与java文件同名)。如无错误,呈示结果,如有出错报告,排错后,重复上面解释执行。 123Java源程序结构 3.JDK工具 Java程序包括源代码(jaa文件)、由编译器生成的类(, class文件)、由归档工具jar生成 上面编写执行jv程序的过程中用到了一些工具,SUN公司免费提供了一套」DK工具,它 jμr文件、对象状态序列化,ser文件。由于只有源代吗需要开发者编写,这里也就只讨论源代 主要包括 码的结构 (1) Juva.exe:JaⅦ编译器,能将源代碼编译成字节码,以.clas扩展名存入jv工作目录 (1) packa;e语句,0或1个,指定源文件存人所指定的包中,该诰句必须在文件之首,如没 中,它的命令格式为:jwe[选项]文件名(全名)。 有此语句,源文件存人当前目录下 其中[选」-g轴出文件中加行号及局郃变量信息,为调试程序时用。 (2)imut语句0或多个,必须在所有类定义之前引人标准类 0对类文件进行优化编译。 (3) public classDefinition,0或1个,指定应用程序类名,也是源文件名。 nowAN关闭皆告信息,只显示错误信息 4) classDefinition,0或多个,类定义。 verbose显示游代码文件和字节码文的相关信息 (5) interfaceDefinition,0或多个,接口定义。 路径/目录。 捉示:Jav是区分大小写的。源文件名与程序类名必须相同,其扩展名为iv,源文件屮最 (2)jwt,ee:Java解释器,执行宇节码程序。该程庠是类名所指的类,必须是一个完整定 笫1章Jaa语论 1.2Java的体系结杓 类孩类用于窗口图形输出和作图。程序第2行的即P,小x 程序第1行的 Import语句,引人jav,w包中的 Graphics elp?显示所有jdh命令。 ignore[异常类]关闭一芥cch命令 引人jva. applet包中的 Applet类。这两个类对 Applet都是必 ist[行号]圳出指定行的漂源代码 需的。程序第3行是定义类的声明,公共类名是 Timefli,该类 locals显示当前线程框架中的局郡变量。 是继承 applet类,继承了Aple类的成员和功能。程序4~9行 小程厅已启动a nemor显示当前调试程厅的内存情况 是该类的类体,包折第5行是方法声明,Aple程序通过图1-5洲L.2程序运行结果 ehu类名】列出该类中所有的方法。 pain()方法向窗口输出,它要求g为参数。程序第6,78行是 prin标洪]打印出指定对象的值 pain()的方法体,其中第7行的意思是:通过 Graphics类的g对象,调用它的 drawstring( Mnng s prn(线程】继续执行指定的一个或多个线程。 inlx,iny)方法,在窗口屏幕的坐标〔x,y)处输出“光阴如箭”字符串,坐标都是按像来计 mr[类][参数]将参数给mni方法,并执行它。 算的。 step当前线程单行执行。 Applet除了java程序的文件外,还有抿人的Web页的HML文件,如上所示。其中关键是 step[a类:行号]在指定类的行上设置断点 在< APPLET>和</ APPLET>标记中的CODE:指明要嵌人HTML中的java字节码文件名以及 suspend[线程挂起指定的一个或多个线程。 Web页窗口的宽和高的尺寸。 hread线程指定线程为当前线程 headgroup名字给当前的线程组命名。 习题 threadgroups列出解释器中所有正在调试的线程组。 Threads[找程组]显示指定线程组中所有的线程 n]在当前线程调用处向上移动n个框架 use[源文件路径]给出jb调试类所对应的源代码文件的路径 ,下列洗法中,哪个是正确的? where[线程][ull]显示指定线程的线迫踪 A)Java是不区分大小写的,源文件名与程序类名不允许相同 6) javaprof, exe;Java剖析工具,提供解释器剖析信息。执行命令格式;japr[选项]。 B)lava语言以方法为程序的基本单位。 其[选项]为 打印额外信息。 )Aplt是Jaa的一类特殊应用程序,它檄人HTHL中随主页发布到互联阿上。 (7) appletviewer.ee: Java applet浏览器。执行命令档式: appletviewer[- debug ]Url D)以〃/符开始的为多行注释语句 列特点中,哪个是Java虚拟机扶行的特点 其中一 debug表示在jdb中启动 A)字节代码 B}多进程 C)静态莲接 D)網译 URL指定所嵌人Appl的HTML文件名 言的许多特点中,下列囁个特点是C+语言所不具备的? 12.5Java程序举例 A)高性能 I)跨平台 C)面向对象 D)有类库 4.Jaa虚拟机的执行过程有多个特点,下列哪个特点不属于JYM权行特点 1.Java应用程序( Jaya Application}举例 A)多统程 B)功态连接)异常处理 D)异步处理 例1.1实现即时轴入你的名字,显示“XXX欢迎你参加Java考试!结果的应用程序。 5.在Jaa语言有多种实现的饥制,下列哪种找术局干垃极回收机制? “欢迎您参加Jua考试!"的 Juva applicatio程序源代码 A)字节编译 B)内存跟踪C)语法检查 D)堆找上/下滋检查 1) inport jawa,aw.*;//引人j 二、填题 (2)import jawa. awt. evenl. +t 2.每个Jm应用程序可以包括许多方法,但必须有且只能-入不同事件 (3)import juva swing. *i 方法 定义英 3.Jaa源文件中最多只能有一个 类,其他类的个数不限。 (5)! puhlic static void main!Sr;ng[ I args)∥/定义main()方法,它是程序的入口点 4.Jaa语言通过接口支持 维承,使类维承具有延灵活的扩展性 ∥创建空口 5.Ja·语言中 是所有类的根 EXIT_ON_CLOSE) 綁↓章Ja语方柢论 2Iava的体系结构 (11)elune Welcome Frame exlenda JFram: 程序的起始行由/开始是注释语句。在Jara语盲中有3种注释语句:第1种是以//符开始 / 12)i publio Welcome frame() 的单行注释语句;第2种是由/◆开始,以*/结束的多行注释语句;第3种是由/*·开始,以* SIze DEFAULT_WIDTH, DEFAULT_HEIGHT) 结束的可生成括助文档的注释语句(参见实例第11.14.30行)。程序1~3行是 Import语句,用 来加毂已定义好的类或包,供本程序使用。程序第4行是应用类的开始,在Ba语言中,把所有 Container conleriPane geI ContenuPane(): 的应用程序都视为类,用保留字 class(必颁小写)来声明新的类,类名尽可能表示其功能。源代 leIx Pane, add( pune l); 咼文件名与此类名必须相同,并带.jav扩展名。行中 publie指明该类是一个公共类,v程序 中叮以定义多个类,但公共类只能有一个。从第5行肭花擂号开始到序最后】行花括号结束 19) Public stalie final int DEFAULTWIDTH 300 设置口宽 是该类的类体。一般类体由两部分组成;一部分称为域,它包括常量、变量数组等独立的实体; 20) public statie final inI DEFAULT_HEIGHT 200: /设置口高 另一鄙分是方法,本程序中有main(), Welcome Frame()、 WelcomePanel()、 actionPerformed()等方 。每个方法由方法头和方法体组成,方法头由方法名和()组成,方法名前面的 public static 22)class WelcomePanel extends JPanel 定义方法类 vuid是描述该方法属性的修饰符, public表示mai方法可被任意java对象访问, static表示该方 23]1 public Welcome Panel( 24)| JLabel proap!- new JLabel("谛粕人您的名字:");"请人您的名字存人 prompl 法是静态方法即只能在类中使用。void表示该方法没有返回值,因为ja的类型检查很严格 ield input a new JTextField( 10); 〃创建接收入字符条 般方法都有适当返回值,对没有返回值的方法,在其前面必须加void说明。在方法的()内可包 inal TextField oulput new JTeat Field(25) 创建显示字符条 括0个或多个形式参数如 String args[]是字符串数组, ActionEvent是触发事件参数。每个应用 Lutton henn s new JButton ("Welcome"): 创逮 Welcom纽 程序可以包括许多方法,但必须有且只能有一个main方法,格式统一为 public static void main add prompt); /”输人您的名字“放首行 ( String arg]),它是程序执行人口。方法体由一对花括号括起来的以若干分号结尾的语句构 add(input): 接收输人字符条随后 成。方法内部不允许嵌套绵程者自定义的方法但可包括系统定义的各种方法,如本程序中包括 032 add( output: 〃显示输人字符条放第二行 了类库中许多类所定义的方法 JTextField(8)、ad( prompt)、 setsize()、 ame show()等。 adc(btr ∥/ Welcone按钮随后 2. Java Apple的实例 监听事件 例1.2窗口输出“光阴虹能"。 口转出”光刚如箭 puhlic void action Performed( Action Event evenk··定义方法· i String s input getText( y 2)import javI, applet,* 用Appl樊 uput. setText("Hel”+8+",欢迎您参加Jaa考试!"); (3)publie class Time Flies extends aPplet 类声明,继承于 Applet类 (4)1 类的类体 lie void paint( Graphies g /方法声明 r(“光阴如箭”,25 程序运行结果如图1-4(a)所示。输入名字“李可”可后显示结果如图1-4(b)所示 李呵呵 <HTMLS <HEAD o李呵可,劝边您加试! <TItLE> A Sinple Progran/</TITLE> G/HEAD> IPPLET CODE="TimeFlies class WIDTH 150 HEIGHT=25 2 </APPLET //诩用 Time flies /HTML≯ 程序运行结果如图1-5所示 图!-4侧L.1程序运行结果 前面已说过,Aplt是Java的一类特殊的应用程序,它嵌入HTML中,丰页发布到可联网 上。所以它没有mdn)方法,由HTML调用, 笫2章简单数据类型 ∥/定义ix,y为int型的变 long ul, u: ∥定义u1,u2为b"型的变量 >2.2.2浮点型数据 浮点型数据属于实型数据,分「o和 double阿种类型,也有实型常量和实型变量之分。浮 点型数据由数字和小数组成,必须有小数点,因此小数位数b越多,表示数越精确。 第 章 简单数据类型 型常f 实型常量的书写格式有十进制格式;如0.256、1.88、256.0等;科学计算格式;25663或 256E3,其中的e或E是指数符,因此要求在e/E之前必须有数字,在c/E之后必须是整数。实型 常量在计算机中的存储表示用foat和 double两种类型,如1.33568E2f或133.568F(数的末尾 加F或[)都表示相同的133.568浮点数;面1.3368E2D或133.568d(数的末尾加D或d)都表 示133.568的 double双精度浮点数。foa类型在计算机内存储占32位bi, double类型占64位 hi。如果同一个数,用不同类型表示,在计算机内古bi数不同,经计算机计算处理后精度不同 21}蹶 lo类型具有占内存少、运算快的优点。因此,只要度能满足,就应该用它,只在精度要求很高 ,才选择 double类型foa!类型数的表示范围是:±3.40282347E38,而 double类型数的表示 范国是;±1.7976%313486231570E308。 每种语言都从数据类型开始,因为计算机应用的本质就是对信息的数字化。在现实世界里 提示:如数字后没有任何字母,计算机默认为 double类型。 所有的事物都是用名字来区分的,计算机程序也利用名字来区分数字,即用名字去定义程序中的 2.实型变量 各种成员,这种名字在编程语言中称为标识符。每种语言对标识符的命名都有规则,在Java语 实型变量也分且ot类型和 double类型,它的定义如下: 言中,所有的变量、常量、对象和类都是用标识符命名的,标识符的命名规则为 ∥定义门,yl变量是单赬度ca实 (l)标识符是以字母、下划线()美元符(B)作为首字符的字符串序列。在首字符后面可 double pl,s∥定义,N变量是双植度duhl实型 以跟字母、下划线()美元符($)和数字。 实型变量的运算过程没有溢出的问题。如出现下溢,计算机设置为00;如出现上溢,计算 机结果显示为± Infinity(正/负无穷大),表示上溢的特殊值。当除法分母为0时,结果为NaN特 (3)标识符的字符数目没有限制,但为便于阅读和记忆,不宜太长 殊值(即 Not a Number)。 Jaγa语言使用 Unicode字符集,它的字母包括:A’-·Z、a,-‘z以及序号大于0xC0的 Jaa语言提供下列儿个常值变量去表示最大值、最小值和判别溢出的特殊值 所有符号(有关 Unicode字符集的评细倍息,可在htp:!/w, unicode.o网站上查到),例如 fot关型 double类型 username, iLUser、 sylAr,$dcm,$app等都是合法的标识符,而2uni,#roon,401mm等是非法 最大值 Float MAX VALUE Double, MAX VALUE 标识符。 最小值 Double, MIN VALUE 在Java语亩中有一些标识符是具有专门的意义和用途的,不允许作为一般标识符应用,它 大Foa. POSITIⅤ E INFINITY 负无穷大 Float. NEGATIVE INFINITY Double NEGATIVE INFINITY n/0 Float. NaN Double naN boolean break byle 少2.23布尔型数据 uIt do doubl 布尔型数据只有两个值:tmue(真)和fle(假)它不对应任何数值,因此,它不能与数字进行 else extends 柞互转换,布尔型数据一般用干逻辑判别,在流控制中常用,它在计算机内存占1个字节默认值 false final finally nbat for 屙部变量除外)为[alse if import implements instanceof int interface 布尔变量定义举例如下: boclean It 定义变量为布尔型,初值为tra native new null 第2韋简单戴据奠亚 22筒单数里 package private protected public short static super switch synchronized 22P篇单数据类型 this threadsafe throw throws transient Inue try while >22,1整型数据 提示:在Jawa中,常量mull、 false、rue都是小写,所有数据类型的长度都固定,并与平台无关 整型数据分整型常量和整型变量。 因此没有 SIsco保留字。 1.整型常量 Java的数据类型必须实例化后才能使用,它们通过变量或常量来实例化。变量是程序中的 铿型常量分3种书写档式: 基本存储单元之一,由变量名、变量类型、变量属性、变量初值组成。变量名是合法标识符。变量 (1)十进制整数,如l89,-360,456 类型有两大类:基本类型(包括整数型、浮点型、布尔型、字符型等)和复合类型(包括数组、类和 (2)八进制整数,以0开头,如012表示十进制的10。 接口)。变量属性是描述变量的作用域,按作用域分类有局部变盘类变量、方法参数和异常处 (3)十六进制整数,以0x或0X开头,如0X123表示十进制数291。 理参数。变量作用域是指可访问变量的池围,局部变量在方法中声明,作用域是方法代码段。类 铿型常量在计算机中默认值占32位,分byte、shon、int和long4类,它们分别占8、1632、64 变量在类中声明而不是在类的方法中声明,作用域是整个类。方法参效用来传递数据给方法,作 位hits对于long类型整型常量书写表示时,要在数字后面加L或l如4096I表示一个64位的 用域是方法内代码段。异常处理参数用来传递给异常处理代码段,作用域是异常处理内代码。 4096长整数。 inal属性是专门定义常值变量的保留字,说明该变量赋值以后永不改变,变量初值是该变量 2.整型变量 的默认值。常量与变量一样也有各种类型。变量与常量举例如下 与整型常量相同,Jawa诸言提供了bye、cho、in和long4种类型的整型变量。 int al bl, cl /al,bl,cl变量为整数型 为防止计算机高低宰节存储顺序不同,通常用bye类型来表示数据可以避免出错。一殷情 d1,2变量为整数型,d2的初值为10 ah],chS变量为宇符型 况很少使用该类型,因为它只有8位b,能表示数据的范围很小是-128~+127。 final Acal Pl=3- 1415 P常量为浮点型,值为3 shot类型数据的存储顺序是先高后低这对存储颂序相反的计算机就易出错.使用时要特 Java语言的数据类型如图2-1所示 别注意。它存储时占16位b,表示的数据范围是-32768~+32767,这种类型也不常用 n类型是最常用的整数类型,它存储时占32位bit,能表示的数据范围比较大,是 簦数类型( byte, iat, long, short) -2147483648-+21474836们 数值类型 long类型用于大型计算,能表示的数据范围可能超过int类型,如天气预报的计算,天体 简单数据类型{字符类型 (char) 浮点数类型[ nost double) 宇宙计算都是天文数字,就会用lon类型来表示。它存储时占64位hit,数据范围是 布尔类型 boolean) -9223372036854775808L~+9223372036854775807L 数据类 类(oas) 使用型变量特别要注意数值的范围如要存的数据超出范围该数会被做断,实际变量中 复合数据类型{接口( interface 的数据已改变程序会出现非预料的结果,而且这种问题很难查出。整型变量的默认值为0,但 局部整数变量必须賦初始值 图2-1Jav语百的點据类型 JavE语言提供4个落值变量: Integer. MAX VALUE表示整型最大值;neer. MIN VALUE表 示狴型最小值;Long. MAX VALUE表示长整型最大值;Long.MN_ VALUE表示长整型最小值。 提示:Jva语言没有无符号整数类型指针类型结构类型联合类型枚举类型,这使得Jau 如果经计算机处理后,结果超过计箅机可表示的数据范围,则称为滋出。如超过最大值,则 绢程简单易学。 称为上溢;如超过最小值,则称为下溢。一个最大值加1后,计算机产生上溢,该数被变为整型最 小值。·个最小值减1,产生下溢,该值被变为整型最大值。因此,要特别防止数据的上、下 定义整型变最举例: byle u, d, h /定义;,d,为宇节型变量 /定义3和为shot型的变量

...展开详情
试读 127P 全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
yinghuayu_12 资源比较旧,要30c币,有点多了
2018-09-19
回复
frenchfries 一般吧,资源不错
2018-08-27
回复
MoShaoBBC 资源不知道,但是CSDN的下载真垃圾
2018-05-04
回复
feng的微笑 资源还不错,可以好好看看,学习一下
2018-01-08
回复
AI标 教程,适合于初学者
2017-11-29
回复
fun2link 资源不错,看完后很有收获!!
2016-09-24
回复
fzsythsh 非常好,感谢分享!
2016-04-18
回复
fshouyue 扫描的不错,如果能按正常书籍顺序排版就好了,看得有点累
2016-03-17
回复
已经停用234入团 非常有用,不错
2015-12-31
回复
wlxz11 虽然排版看起来有些费劲,但是资源很不错!
2015-12-07
回复
上传资源赚积分or赚钱
    最新推荐
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf 48积分/C币 立即下载
    1/127
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第1页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第2页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第3页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第4页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第5页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第6页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第7页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第8页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第9页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第10页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第11页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第12页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第13页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第14页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第15页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第16页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第17页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第18页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第19页
    全国计算机等级考试-二级教程-Java语言程序设计(打印版).pdf第20页

    试读结束, 可继续阅读

    48积分/C币 立即下载 >