Java程序设计基础教程.docx

上传人:李医生 文档编号:11725848 上传时间:2021-09-01 格式:DOCX 页数:44 大小:388.48KB
返回 下载 相关 举报
Java程序设计基础教程.docx_第1页
第1页 / 共44页
Java程序设计基础教程.docx_第2页
第2页 / 共44页
Java程序设计基础教程.docx_第3页
第3页 / 共44页
Java程序设计基础教程.docx_第4页
第4页 / 共44页
Java程序设计基础教程.docx_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《Java程序设计基础教程.docx》由会员分享,可在线阅读,更多相关《Java程序设计基础教程.docx(44页珍藏版)》请在三一文库上搜索。

1、Java程序设计基础教程Java程序设计基础教程第一章概述本章技能目标(1) 了解Jwa语言的由来、特点、家族成员及实现机制。(2)熟悉JDK开发环境的安装及配置。(3)会使用Eclipse开发第一个Java应用程序。重点和难点开发环境的配置及使用。1. IJava语言简洁1. 1. Uava语言的由来Java是由SUN公司开发而成的新一代编程语言。Oako咖啡(Java)。Java大家庭:(1) J2ME即 Java2 Micro Edition。(2) J2SE即 Java2 (Software Development Kit) Standard Edition。(3) J2EE即 Jav

2、a2 Enterprise Edition (可扩展的企业应用 Java2 平台)。1. l.2Java语言的特点面向对象及面向过程。高级语言程序必须转换为机器语言程序才能执行,但不同的计算机系统所使用的机器语言不 同。一次编译,随处运行。任何系统只有安装了 Java虚拟机(Java Virtual Machine, JVM)后,才可以执行J软va程序。1 / 32Java程序设计基础教程当JVM解释执行Java程序时,Java实时编译器(Just-In-Time, JIT)会将字节码译成目标 平台对应的机器语言的指令代码。编译器会产生一种具备结构中立性的对象文件格式,即Java字节码文件。在

3、Java中,这种供虚拟机理解的代码叫做字节码(ByteCode),它不面向任何特定的处理器, 之而向虚拟机。Java字节码可在任何安装了 Java虚拟机的平台上运行。每一种平台的解释器是不同的,但是实现的虚拟机是相同的。Java源程序经过编译器编译后 变成字节码。字节码由虚拟解释执行,虚拟机将每一条要执行的字节码送给解释器,解释器 将其翻译成特定机器上的机器码,然后再特定的机器上运行。其执行过程如图1-1所示。1. 2开发环境配置及使用2. 2. 1JDK的安装及配置在开发Java应用程序前必须首先下载并安装JDKO目前JDK最新版本是1. 6。dk-6u21 -w i nd ow s- i

4、58& !3. 认识JDK(1) bin 目录。提供了工具程序,包括 javac、java javadoc appletviewer 等程序。1)javac用于将Java源代码编译成字节码。其语法为:Javac option source其中,option可包括以下几项:-classpath路径,指定将使用的类路径,以搜索.class文件。-d目录,制定用于存放经过编译的.class文件的目录。表示当前目录。Source是以扩展名.java结尾的一个或多个文件名。2) java用于执行java字节码。其语法为:Java option classname arguments3 / 32Java程

5、序设计基础教程其中,option可包括以下几项: -classpath路径,指定将使用的备用类路径。-version版本,显示编译源代码的JDK版本。3) javadoc用于生成API文档。4) appletviewer用于运行编译好的Applet。(2) jre目录。提供JDK附带的JRE资源包(运行环境)。(3) lib目录。提供了 java工具所需的资源文件。(4) demo目录。提供了 Java编写的范例程序。(5) src.zip文件。提供了 API类的源代码压缩文件。如需查看API的某些功能实现方法, 可以查看这个文件中的源代码内容。3o设置Patch及Classpath环境变量(

6、在Windows XP环境下)(1)设置Patch。具体方法是:用鼠标右键单击桌面上“我的电脑”图标,选择“属性”选 项,再选择“高级标签”,系统显示如图1-3所示。11 / 32单击“环境变量”按钮,打开“环境变量”对话框。选择Path变量,单击“编辑”按钮,在“变1=1 春I值这本框中加入 JDK 的 bin 地址目录,如:C:ProgramFilesJavajdkl. 6. 0_21bin,地址间采用隔开,如图1-4所示。设置完成后,单击“确定”按钮完成设置,并返回到“环境变量”对话框。(2)设置Classpatho再“环境变量”对话框中单击“新建”按钮,设置变量名为Classpath

7、变量值为:.;C: Program FilesJavajdkl. 6. 0_21lib 如图 1-5 所示。提示:表示当前目录。(3)测试。具体方法是:单击“开始”菜单,选择“运行”命令,输入and命令,进入DPS界面,若工入 java- version命令会出现如图1-6所示的信息,则表明设置正确。D: jaua -uei*sionjaua uersion 1.6.0U21Jaua(TM) SE Runtime Enuii-onnienit Cbuild 1-6.0_21-b07)Jaua HotSpot javac Message -java.D:jaua Message 欢迎来到Jaua

8、世界?1. 2. 2开发第一个Java程序ec 1 ipse-SDK-3, 2.2-Win32(1) Eclipseo登录下载。(2)安装 Eclipse。Eclipse是一个绿色软件,无需安装即可执行。史cl ip转3.6最新最全汉化包覆盖下列文件到程序目录即可。features .:口plugine i(3)运行Eclipse。进入解压后的eclipse目录,双击eclipse, exe运行Eclipse集成开发环境。在运行时,Eclipse会提示选择工作空间,如图1-7所示(这里选择E:黄伟林第一章作为工作空间)选择工作空间后,单击“确定”按钮,会出现一个欢迎界面,可以把欢迎界面关闭。(

9、4)用Eclipse编写程序。1)新建项目(project):单击“文件”一“新建” f “项目”命令,在弹出的对话框中选择 “Java项目”选项,单击“下一步”按钮,如图1-8所示。新建项目提示:项目又称“工程”。2)新建Java程序:选中“包资源管理器”中的JavaStudy项目节点,单击鼠标右键,选择 “新建”一“文件”命令,新建文件,如图i-io所示。在“文件名”文本框中输入:FirstClass. Java,单击“完成”按钮,系统将自动弹出如图所示的Eclipse主窗口。3)编写代码:在Java编辑器中输入如图卜12所示的内容。public class FirstClasspubli

10、c static void main(String args)(System. out. printin (Hello World!”);)4)保存:单击工具栏中的“保存”按钮或“文件”菜单中的“保存”命令。在保存的同时,Java程序设计基础教程Java程序设计基础教程Eclipse将自动将源程序编译成字节码文件。若程序有错误,将显示在“问题”视图中。5)运行:在“包资源管理器”中,选中FirstClass类节点,单击鼠标右键,选择“运行方 式” 一“Java应用程序”选项。如果看到如图1-13所示的输出结果,表明第一个程序开发成 功。1. 2. 3 Java程序框架(1)给程序起个名字,我们

11、把它叫做类名,图1T2中的FirstClass就是类名。类名前腰用 public (公共的)和class (类)两个词修饰,他们的顺序不能改变,中间要用用空格分隔。 类名后跟一对大括号,所有属于这个类的代码都放在和之间。(2)写出main方法的框架public static void main(String args) main方法是所有Java应用程序执行的起点。一个程序孩子能有一个main方法。(3)在main方法中填写代码。println()和print。都是向控制台输出消息,唯一不同的是,println。在输出消息后会自 动换行,而print。不会自动换行。注意:(1)public修饰

12、的类名不能随便起,必须及Java文件同名。(2)每条语句必须以结尾。(3)输出的字符串必须用双引号括起来,而且必须是英文的引号。L3案例:制作频道菜单参考代码class PinDaopublic static void main(String arg)17/32System.。力printin(欢迎收看电视频道,请选择:);System. out. printin (tl:少儿频道);System. out. printin(t2:影视频道);System. out. printin(t3:经济频道);System. out. print In (t4:体育频道);System. out. p

13、rintin (t5:农村频道);)1.4本章小结源程序以.java为后缀名,编译后生成的文件以.class为后缀名。1. 5实战训练实战:开发简单的Java应用程序参考方案public class Practicelpublic static void main(String args口)(System. out. printin(姓名:张三);System. out. printin(年龄:21);System. out. print In (性别:男);System. out. printin(职业:学生);System. out. print In (住址:杭州市江干区139号”);J

14、ava程序设计基础教程System. out. printin (电话:5);)第2章Java语言基础本章技能目标(1)了解Java语言的基本符号,包括关键字、标识符、运算符和注释。(2) 了解Java语言的数据类型以及变量、常量的使用。(3)会使用Java的运算符。(4)掌握Jwa语言的控制语句,如分支语句、循环语句灯。(5)掌握Jwa中数组的创建和使用。重点和难点(1)Java分支语句的使用。(3) Java循环语句的使用。(4) Java数组的声明、初始化和使用。(4)数据类型转换。2. 1 Java 符号Java的符号可以分为:标识符、关键字、运算符和注释符号。2. 1.1标识符在Ja

15、va语言中,任何一个变量方法、对象和类都需要事先用一个名字来对它命名,这个名字 就是标识符。Java中标识符的使用有如下规定:(1)标识符由字母、数字、美元符号和下划线“,组成,除此之外的任何其他符号是Java程序设计基础教程不能作为标识符使用的。(2)标识符中的第一个字符不能为数字。(3)标识符不能为Java的关键字,但Java的关键字可作为标识符的一部分。(4)区分大小写,如Ad、ad aD是不同的标识符。(5)长度不限,但不宜过长,尽量做到知名达意。(6)注意和”的区别,减号是不能作为标识符的。为了提高程序的可读性,SUN公司推荐在Java编程时使用一下的习惯约定:(1)类名:可由一个或

16、若干个名词组成,每个名词首字母大写,其他小写。如AccountBook、Complex Variableo(2)接口:规则同类名。如Account。(3)方法:由一个或多个动词组成,开头小写,动词间区分用大写,其他小写。如 balanceAccount。(4)变量:小写字母开头,单词间用大写字母讲个。如currentCustomer。(5)常量:所有字母大写,单词间用下划线区分。如MAXIMUM_SIZE。2. 1. 2关键字关键字是Java语言本身使用的标识符,均采用小写形式。2. 1. 3注释符注释内容在编译时会被编译器忽略。Java的注释有三种形式:单行注释、多行注释和文档注释。(1)单

17、行注释。也叫双斜杠注释,即在注释内容前使用一个双斜杠(),表示从斜杠开始 到本行结束都是注释内容,编译器不需要编译这部分内容。【例2-1】单行注释示例。class Examplelpublic static void main(String1 args)(System. out. printin(单行注释示例);在屏幕上输出)(2)多行注释。这种注释以“/*”开始,以“*/”结束,两组符号必须成对出现。一般使用 该注释来注销目前不再使用但仍想保留的代码行,或者像让它在调试过程中暂时失效。【例2-2】多行注释示例。class Example2public static void main(Str

18、ing1 args)(/*System. out. printin(单行注释示例);在屏幕上输出*/System. out. print In (多行注释示例);)程序结束(3)文档注释。文档注释主要放在类、接口、方法和成员变量定义的前面,用于对这些对象 的解释。除了便于阅读理解外,主要目的是为了用Javadoc工具生成API文档。这种注释以 “/*”开始,以“*/”结束。【例2-例文档注释示例。/* 标题:文档注释* 描述:距离说明文档注释的注释方法* 版权:Copyright (c) 2008* 公司:XXX* version versionl.5* /class Example3publ

19、ic static void main(String args) (System, out. printin(文档注释示例);程序结束2. 1. 4运算符及分隔符 运算符,是用来执行某种运算(如加法+、减法-、乘法*)的符号。Java中的运算符有很多,如算术运算符、逻辑运算符、关系运算符灯。符是为了将程序代码组织成编译器可以理解的形式,常见的分隔符有()、;和 空格。2. 2 Java数据类型及使用Java语言中包含两大类数据类型:基本数据类型和引用数据类型(如图2-1所示)。Java的基本数据类型长度是固定的,可以跨平台自由移植。在Java中,基本数据类型主要有4种。L整数型Java 定义了

20、 4 种整数类型:byte short int long* 见表 2-22 .浮点型浮点数即实数,包括整数和小数两部分。Java中有两种浮点数一float和double,分别代表单精度型和双精度型。3 .字符型在Java中,用于存储字符的数据类型是char。4 .布尔值在Java中,用于存储布尔值的数据类型是boolean,占1位,其布尔常量只有两个值:true 和 falseo 引用数据类型是指由基本数据类型组合成的较复杂的数据类型。不同类型的数据既可以以变量的形式出现,也可以以常量的形式出现。变量的值在程序执行期间是可变的,而常量的值是不可改变的,它们都代表内存中指定的存 储单元。将数据指

21、定给变量,就是将数据存储至对应的内存空间;调用变量,就是将对应的内存空间 的数据取出来使用。在Java中要使用变量,必须先进行定义。其语法为:数据类型变量名二初值;double javaScore=98. 5 ;定义一个双精度浮点型变量javaScore存储分数String name二 jenny” ;定义一个字符串变量那么存储姓名char sex=女;定义一个字符型变量sex存储性别变量必须经定义初始化后才能使用,否则编译器在编译时会报告这个错误。variable var might not have been initialized.在Java中写下“0. 0”这么一个常数,其默认为dou

22、ble数据类型。【例2-4】各种类型变量的使用。class Example4 public static void main(String1 args) (int ageOfStudent = 3;double scoreOfStudent = 90. 0;char levelOfStudent 二A;System. out. printin(年级,得分,等级);System. out. println(ageOfStudent+/z, ,+scoreOfStudent+z/, ,+levelOfStudent+,/, ); )2. 2. 3常量常量是不可改变的数值,按其类型可以分为整型常量、

23、浮点型常量、布尔型常量、字符常量 和字符串常量。(1)整型常量。可分为int型和long型,默认为int型,long型在数值后加L。(2)浮点型常量。有单精度和双精度之分,缺省为双精度,单精度在数值后加f,双精度在 数值后加d或者D。(3)布尔型常量。布尔常量只包括true和false两个值,表示逻辑运算结果的真或假。C语言中布尔值用1或者0来表示。(4)字符常量。用单引号。)括起来的一个字符。如a, H,。Java语言可使用转义字符转V来标记特殊字符。常用的转义字符见表2-4。(5)字符串常量。用双引号(” ”)括起来的一串字符,如“Good monrningo但在Java中,字符串常量是作

24、为String类的一个对象来处理的,而不是一个基本数据类型。2. 2. 4类型转换类型转换有3种情况:自动转换、强制转换和使用类的方法转换。(1)自动转换。将低精度类型数据赋给高精度类型数据时能进行自动转换。如:byte bl = 10, b2 = 20;int b3 = bl + b2; 将byte类型数据转换为int型赋给int型变量。(2)强制转换。高精度类型到低精度类型必须强制转换,这是数据可能会丢失部分信息。如:char key = (char) (12+55); 变量 key 被赋值为 Unicode 值为 67 的字符c(3)使用类的方法转换。如String str = 123”

25、 ;int a = Integer, parselnt (str); 使用 Integer 类的方法 p软rselnt 将 String 转换为对 应的整数。2. 3运算符及表达式运算符是指对操作数所进行的运算。按照操作数的数目,可分为一元运算符(如+、一)、二元运算符(如+、-)和三元运算符(如?:),分别操作一个、两个和三个操作数。表达式是用运算符把操作对象连接起来的、符合一定规则的式子。表达式只有两类:数值和逻辑值。整数相除,其值为整数。如表达式3/5的值为0,而不是0.6。2. 3.1算术运算符和算术表达式其用法见表2-525 / 32Java程序设计基础教程先乘除后加减,必要时加上括

26、号表示运算的先后顺序。System. out. printin (double) (1+2+3) / 4);注意在上面的程序代码中使用了 double限定类型转换,如果不加上这个限定,程序的输出会 是1而不是L5,这是因为在该程序中,1、2、3、4这4个数值都是整数,程序运行(1+2+3) 后的结果还是整数类型,若此时处以整数4,会自动去除小数点之后的数字再进行输出,而加 上double限定,表示要将(1+2+3)运算的值转换为double数据类型,这样再除以4,小数点 之后的数字才不会被去除。int testNumber = 10;System. out. printin (testNumb

27、er / 3. 0); 第一种方法System. out. printin (double) testNumber / 3); 第二种方法如果表达式中有一个浮点数,则程序就会先转换使用浮点数来运用。当将精确度小的数据类型(如int)指定给精确度大的数据类型变量(如double)时,精确 度并不会失去。如果确定要转换数值为较小的精度,必须明确加上转换的限定符,编译器才不会报告错误。2. 3. 2关系运算符和关系表达式关系运算符用来对两个值进行比较,返回布尔类型的值true和falseo关系运算符都是二元运算符,其用法如表2-6所示。在Java中,条件成立时以true表示,不成立时以false表示

28、。【例2-5】关系运算的使用。import java. util.public class ComparisonOperatorpublic static void main(String args)Java程序设计基础教程int jeny = 75; /jeny成绩为75Scanner input = new Scanner (System, in) ; /输入的种方法System. out. printin (请输入joe的成绩:);int joe = input, nextlnt();boolean result = jeny joe;System, ou力 printingjeny的成

29、绩高于joe吗? + result);)String si = hello”;String s2 = new String( hello );System. out. printin (si = s2); 显不 falseSystem. out. printin (si. equals. (s2); 显示 true2. 3. 3逻辑运算符和逻辑表达式表2-7列出了各种逻辑运算符的运算规则。【例2-6】逻辑运算符示例。public class LogicalOperatorpublic static void main(String args)(int number = 75;System. o

30、ut. printin (number 70 & number 80 number 80 & number = 60 ?是:否);)【例2-8】判断使用者输入的是否为奇数。import java. util. Scanner;public class OddDeciderlpublic static void main(String1 args)Scanner scanner = new Scanner(System, in);System. out. print In (请输入数字:);int number = scanner. nextlnt();System, ou力 printin(是

31、否为奇数? ” + (number % 2 != 0 ?是:否);)奇数表示不能被2整除,所以余数一定不是0。2. 3. 6各类运算符的优先级和结核性见表2-9 o2. 4 Java语句及控制流语句2. 4. 1 Java 语句2. 4. 2分支控制语句1. Java提供了 if条件式语句if、else if else,必须是逻辑表达式,其结果必须返回false或true。true执行完后将跳出整个条件选择语句,否则接着判断后面的条件。如果所有条件的值都是 false,则执行else后面的语句。如果这个条件选择语句中没有使用else部分,则什么都不 做,继续执行后面的代码。条件选择语句中除了

32、if必须有之外,其他部分都可以省略。【例2-9判断输入的数是否为奇数。import java. util. Scanner;public class 0ddDecider2public static void main(String args) Scanner scanner = new Scanner(System, in);System. out. print In (请输入数字:);int input = scanner. nextlnt();int remain = input % 2;if (remain = 1)System. out. print In (input + ”为奇数

33、);elseSystem. out. print In (input + 为偶数”);)【例2-10按考试成绩划分等级。import java. util. Scanner;public class ScoreLevellpublic static void main(String args)Scanner scanner = new Scanner(System, in);System. out. print In (请输入考试成绩:); int score = scanner. nextlnt();if (score = 90)31 / 32Java程序设计基础教程System. out.

34、 print In (优秀);else if (score = 80 & score = 70 & score = 60 & score case4中没有任何语句,也没有使用break,所以程序会继续往下执行,直到遇见break 跳出switch为止。2. 4. 3循环语句循环的意思就是反复执行某一段代码,直到满足一定的结束条件为止。Java 提供了 4 种循环控制语句:while dowhile for 和 foreacho1. while 语句其语法如下:while (条件)语句;)如果循环体只有一个语句,则while的可以省略;while循环一般适用于循环次数不确定的 情况。【例2-12

35、】输入某班级的学员成绩,并计算平均值,输入-1时,结束。import java. util. Scanner;public class ScoreAveragepublic static void main(String args)Scanner scanner = new Scanner(System, in);int score = 0;int sum = 0;int count = -1;while(score != -1) count+;sum += score;System. oz. print In (请输入学员的成绩(T结束)! );score 二 scanner. nextln

36、tO ;)System, ou力 printin (全班平均成绩为:“+ (double) sum / count);)2. dowhile 语句先执行循环体,然后再进行条件判断。dowhile的语法如下所示:do 语法一;语法二; while(条件式);【例2-13】重复判断输入数据的奇偶数。import java. util. Scanner;public class 0ddDecider3public static void main(String1 args)Scanner scanner = new Scanner(System, in);int input = 0;int repl

37、ay = 0;do System. out. print In (输入整数值);input = scanner. nextlntO ;System, out printin (输入数位奇数? + (input % 2 = 1) ? Y : N);System. out. printin (继续(1:继续 0:结束)?);replay = scanner, nextInt(); while(replay = 1);)3. for语句f or (初始表达式;循环条件;循环迭代)语句组;)【例2-14定位输出0,9字符及ASCII码,每行5个。public class ListCharactersp

38、ublic static void main(String args)(int i = 0;for (char c = O ;c= 9 ; c+, i+) if(i % 5 = 0) System. out. printin ;System. out. print (z,c: + (int) c + t);4. for*each 循环 其格式如下: for (variable : collection) statement;2. 4. 4 break 和 continue break可以结束当前的程序块,并继续程序块后面的语句。continue的作用及break类似,主要用于循环,所不同的是b

39、reak会结束程序块的执行,而 continue只会结束其之后的语句,并跳回循环的开头继续下一次循环,而不是跳出循环。2. 5数组1 .数组的创建(1)先定义后创建,过程如下:1)声明。数组元素类型数组名口; int Number ;数组元素类型口数组名;int口 Number;2)创建。数组名=new数组元素类型口Number = new int;在没有给数组元素赋值前,系统会自动赋予它们默认值,表2-10列出了每种类型的默认值。39 / 32Java程序设计基础教程(2)在定义的同时创建,格式如下:数组元素类型数组名口 = new数组元素类型数组元素个数;int Number = new

40、int8;(3)利用静态初始化来完成数组的创建,格式如下:数组元素类型数组名口 = 值1,值2)int score = 90, 85, 55, 94, 77);2 .数组的使用(1)获取数组的元素个数;数组名.length;(2)数组元素的存取。在Java中数组的索引从0开始。【例2-15】显示数组中的每一个元素值。public class SimpleArraypublic static void main(String1 args) int score = 90, 85, 55, 94, 77);for(int i = 0; i score, length; i+)System, out. println(i + “索弓I号= + scorei);) 格式化显示数据,用法同C语言)指定的索引值不可超出数组范围。【例2-16利用for-each来求全班的平均成绩。41 / 32Java程序设计基础教程public class ForEachTestpublic static void main(String

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1