版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二讲第二讲 Java语言基础语言基础 任何程序设计语言,都是由语言规范和一系列开发库组成的。如标准C,除了语言规范外,还有很多函数库;MS Visual C+更是提供了庞大的APIs和MFC。 Java语言也不例外,也是由Java语言规范和Java开发包组成的。 学习任何程序设计语言,都是要从这两方面着手,尤其是要能够熟练地使用后者。1、Java语言基本元素2、Java数据类型3、Java语言结构4、Java控制语句5、Java类定义规范6、Java数组7、Java开发类库组成主要内容主要内容语言规范语言规范开发类包开发类包n标识符(Identifier)n保留字(Reserved Word
2、 )1、Java语言基本元素语言基本元素n程序员对程序中的各个元素加以命名时使用的命名记号称为标识符(identifier)包括:类名、变量名、常量名、方法名、Java语言中,标识符是以字母,下划线(_),美元符($)开始的一个字符序列,后面可以跟字母,下划线,美元符,数字。n合法的标识符identifier userName User_Name _sys_value $changen非法的标识符2mailroom# class1、Java语言基本元素语言基本元素标识符标识符n具有专门的意义和用途,不能当作一般的标识符使用,这些标识符称为保留字(reserved word)。abstract
3、break byte boolean catch case class char continue default double do else extends false final float for finally if import implements int interface instanceof long length native new null package private protected public final return switch synchronized short static super try true this throw throws thr
4、eadsafe transient void while1、Java语言基本元素语言基本元素保留字保留字n数据和返回值类型:int, void, returnn包/类/成员/接口:package, class, interfacen访问控制:public, private, protectedn循环及循环控制:if, switch, breakn例外处理:throw, try, finallyn保留词(无含义但不能使用):goto, const1、Java语言基本元素语言基本元素保留字:基本分类保留字:基本分类n在Java中,true、false和null都是小写的。区别于C+中大写的TRUE
5、、FALSE和NULL。n所有的数据类型所占用的字节数都是固定的,并且和实现无关的,因此在Java中没有sizeof操作符。n不必死记这些关键词,当理解每个关键词的含义后,自然就记住了所有的关键词。1、Java语言基本元素语言基本元素保留字:注意事项保留字:注意事项2、Java数据类型数据类型q 常量(Constant)q 变量(Variable)q 数据类型(Data Type)n 基本数据类型(Primary Data Types)n 复合数据类型(Composite Data Types)Java中 的 常 量 值 是 用 文 字 串 表 示 的,它 区 分 为 不 同 的 类 型,如
6、整 型 常 量 123,实 型 常 量 1.23,字 符 常 量 a ,布 尔 常 量 true、false以 及 字 符 串 常 量 This is a constant string.。与 C、 C+不 同,Java中 不 能 通 过 #define命 令 把 一 个 标 识 符 定 义 为 常 量,而 是 用 关 键 字 final来 定义,其定义格式为:final Type varName = value , varName =value ;qfinal int globalAccount = 100, nationalAccount = 50;qfinal double PI=3.1
7、41592、Java数据类型数据类型常量常量n程序中的基本存储单元,其定义包括变量名、变量类型和作用域几个部分,定义格式为:nType varName = value , varName =value;nint n = 3, n1 = 4;nJava中变量的缺省初值缺省初值都是确定的:n布尔变量的初值为:falsen整数变量的初值为:0n浮点数变量的初值为:0.0n引用(复合)变量的初值为:nulln在方法实现中定义的变量必须显式的初始化。n变量的作用域 指可访问变量的一段代码,在程序中不同的地方声明的变量具有不同的作用域:局部变量、类变量、方法参数、例外处理参数。在一定的作用域内,变量名必须
8、唯一。2、Java数据类型数据类型变量变量Java type systemprimitivereferencenullcharnumericbooleanclassinterface arrayintegralfloating-pointbyteshortintlongfloatdouble2、Java数据类型数据类型数据类型数据类型基本数据类型基本数据类型复合数据类型复合数据类型n 所有基本类型所占的位数都是确定的,并不因操作系统的不同而不同。n 所有基本类型的关键词都是小写的。数据类型数据类型所占位数所占位数数的范围数的范围 char 160 65535 byte 8-2727-1 sho
9、rt 16-215215-1 int 32-231231-1 long 64-263263-1 f loat 32 3.4e038 3.4e038 double 64 1.7e308 1.7e3082、Java数据类型数据类型基本数据类型基本数据类型n布尔型数据只有两个值true和false,且它们不对应于任何整数值布尔型变量的定义如:boolean b = true; n布尔型数据只能参与逻辑关系运算:n& | = != ! n示例:nboolean b1;nboolean b2 = true;nb = !b2;nboolean b = (b1 & b2) != false;
10、2、Java数据类型数据类型基本数据类型:基本数据类型:布尔类型布尔类型(boolean)n字符型数据代表16位的Unicode字符n字符常量是用单引号括起来的一个字符na B n u0030n字符型数据的取值范围为n065535 或者说 u0000uFFFFnu0000为缺省值n示例nchar c1; 缺省值为0nchar c2 = 0; 赋初值为字符0nchar c3 = 32; 用整数赋初值为空格2、Java数据类型数据类型基本数据类型:基本数据类型:字符类型字符类型(char)n特殊字符的常量表示法:n反斜线(Backslash)n退格(Backspace)bn回车(Carriage
11、return)rn进纸符(Form feed)fn制表符(Form feed)tn换行(New line)nn单引号(Single quote)n八进制数( 0377 )DDDnUnicode字符uHHHH2、Java数据类型数据类型基本数据类型:基本数据类型:字符类型字符类型(char)n整型常量1. 十进制整数如123,456,02. 八进制整数以0开头,如0123表示十进制数83,011表示十进制数9。3. 十六进制整数以0 x或0X开头,如0 x123表示十进制数291,0X12表示十进制数18。n整型变量类型为byte、short、int或long,byte在机器中占8位,short
12、占16位,int占32位,long占64位。整型变量的定义如:int x=123; /指定变量x为int型,且赋初值为123 byte b = 8; short s = 10; long y = 123L; long z = 123l; 2、Java数据类型数据类型基本数据类型:基本数据类型:整数类型整数类型(byte, short, int, long)n64位长整数以l或L结尾: 12l, -343L, 0 xfffffffffLn1L 32 等于 4294967296Ln1 高高byte,short,char int long float double操作数操作数1类型类型操作数操作数2
13、类型类型转换后的类型转换后的类型byte、short、charintintbyte、short、char、intlonglongbyte、short、char、int、longfloatfloatbyte、short、char、int、long、floatdoubledouble2、Java数据类型数据类型基本数据类型:基本数据类型:数据类型转换数据类型转换n 数据类型转换必须满足如下规则:n不能对boolean类型进行类型转换。n不能把对象类型转换成不相关类的对象。n 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。n 转换过程中可能导致溢出或损失精度n int i = 8; by
14、te b=(byte)i;n (byte)255 = -1(byte)0 x5634 = 0 x34n 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入n (int)23.7 = 23(int)-45.89f = -452、Java数据类型数据类型基本数据类型:基本数据类型:数据类型转换数据类型转换n在Java中,引用(reference)指向一个对象在内存中的位置,本质上它是一种带有很强的完整性和安全性限制的指针。n当你声明某个类、接口或数组类型的变量时,那个变量的值总是某个对象的引用或者是null。n指针就是简单的地址而已,引用除了表示地址而外,还象被引用的数据对指针就是简单的地址而已
15、,引用除了表示地址而外,还象被引用的数据对象的缩影,还提供其他信息。象的缩影,还提供其他信息。n指针可以有指针可以有+、-运算,引用不可以运算。运算,引用不可以运算。n引用型变量只支持有限的逻辑判断:n相等判断(是否同一个对象的引用):= != ntheObject = nullnotherObject != theObjectn类型判断(是否是每个类的实例): instanceofntheObject instanceof Objectn“” instanceof String2、Java数据类型数据类型复合(引用)数据类型复合(引用)数据类型n运算符(Operator)和表达式(Expre
16、ssion)n注释(Comment)n语句(Statement)n代码段(Code Block)n作用域(Scope)3、Java语言的结构语言的结构(1)运算符)运算符n算术运算符: +,*,/,%,+,n关系运算符: ,=,&,|,n赋值运算符: =,及其扩展赋值运算符如+=,=,*=,/=等。n条件运算符: ? :3、Java语言的结构语言的结构运算符和表达式运算符和表达式q 其它n分量运算符 ,n下标运算符 ,n实例运算符 instanceof,n内存分配运算符 new,n强制类型转换运算符 (类型),n方法调用运算符 () n 由于数据类型的长度是确定的,所以没有长度运算符s
17、izeof。3、Java语言的结构语言的结构运算符和表达式运算符和表达式(2)表达式)表达式表达式是由操作数和运算符按一定的语法形式组成的符号序列。n一个常量或一个变量名字是最简单的表达式,其值即该常量或变量的值;n表达式的值还可以用作其他运算的操作数,形成更复杂的表达式。例:xnum1+num2a*(b+c)+d3.14x , , , = , = 15) = , += , -= , *= , /= , %= , =8)= , != 16) &= , |= , = , = 3、Java语言的结构语言的结构运算符和表达式运算符和表达式n举例:n/ 单行注释,简单的解释语句含义.n/* 多
18、行注释,用来说明更多的内容,包括算法等.nn*/n/* Java文档注释,可以通过javadoc生n * 成类和接口的HTML格式的帮助文档.n * 这种注释有其特殊的格式(参见相关文档)n */3、Java语言的结构语言的结构注释注释n一个由分号(;)结尾的单一命令是一条语句(Statement),一条语句一般是一行代码,但也可以占多行代码。nint a = 1; / 变量定义及初始化语句n用大括号( )围起来的多条语句构成一个代码段(Code block);同时代码段也大括号前的一些修饰性描述:nclass Aclass for (int i=0; ii2 ) System.out.pri
19、ntln(“The bigger one is: ”+i1);else System.out.println(“The bigger one is: ”+i2);4、Java控制语句控制语句条件语句条件语句 if-elseswitch (expression)case value1 : statements1; break;case valueN : statementsN; break;default : defaultStatements;4、Java控制语句控制语句多分支语句多分支语句 switch 表达式expression的返回值类型必须是这几种类型之一:int、byte、char、
20、short。 case子句中的值valueI必须是常量,而且所有case子句中的值应是不同的。 default子句是任选的。 break语句用来在执行完一个case分支后,使程序跳出switch语句,即终止switch语句的执行。(如果某个(如果某个case分支后没有分支后没有break语句,程序将不再做比语句,程序将不再做比较而执行下一个分支。较而执行下一个分支。) switch语句的功能可以用if-else语句来实现,但某些情况下,使用switch语句更简炼。4、Java控制语句控制语句多分支语句多分支语句 switchint a = 100;int b = 20;int c; char
21、oper = +;switch(oper)case +: c = a b; break;case -: c = a - b; break;default : c = a * b; break;4、Java控制语句控制语句多分支语句多分支语句 switchn 循环语句 while(当型循环) initialization /初始化条件 while (termination) /循环条件body; /循环体iteration; /迭代,变更循环条件 当表达式termination为true时,执行中的语句,否则终止循环。tbfalsetrue4、Java控制语句控制语句循环语句循环语句 while
22、(当型循环)(当型循环)n 循环语句 do-while(直到型循环) initialization /初始化条件 do body; /循环体iteration; /迭代,变更循环条件 while (termination) ; /循环条件首先执行一遍中的语句,当表达式termination为true时,继续执行中的语句,否则终止循环。tbfalsetrue4、Java控制语句控制语句循环语句循环语句 do-while(直到型循环)(直到型循环)n 循环语句 for(另一种当型循环)for (initialization; termination; iteration)body; /循环体 in
23、itialization /初始化条件 termination /循环条件 iteration /迭代,变更循环条件tbodyfalsetrueiterainit4、Java控制语句控制语句循环语句循环语句 for(另一种当型循环)(另一种当型循环) for语句执行时,首先执行初始化操作,然后判断终止条件是否满足,如果满足,则执行循环体中的语句,最后执行迭代部分。完成一次循环后,重新判断终止条件。 初始化、终止以及迭代部分都可以为空语句(但分号不能省),三者均为空的时候,相当于一个无限循环。 在初始化部分和迭代部分可以使用逗号语句,来进行多个操作。逗号语句是用逗号分隔的语句序列。for( in
24、t i=0, int j=10; ij; i+, j-)4、Java控制语句控制语句循环语句循环语句 for(另一种当型循环)(另一种当型循环)int n = 1, sum = 0;while ( n0);int sum =0;for( int i=1; i=10; i+ ) sum += i;while循环循环do-while循环循环for循环循环4、Java控制语句控制语句循环语句循环语句n在switch语中,break语句用来终止switch语句的执行,使程序从整个switch语句后的第一条语句开始执行。n在循环语句中,break用于终止并跳出循环,从紧跟着循环体代码段后的语句执行。n在
25、Java中,可以为每个代码块加一个标号,一个代码块通常是用大括号括起来的一段代码。加标号的格式为:BlockLabel: codeBlock; nbreak语句的第二种使用情况就是跳出它所指定的块,并从紧跟该块后的第一条语句处执行。BlockLabel: codeBlock; break BlockLabel; codeBlock;4、Java控制语句控制语句程序转移相关语句程序转移相关语句 breaka: /标记代码块标记代码块a b:/标记代码块标记代码块b c: /标记代码块标记代码块c break b; /这段语句将不执行这段语句将不执行 /代码块代码块c结束结束 /这段语句也不执行这
26、段语句也不执行 /代码块代码块b结束结束 /从这段语句开始执行从这段语句开始执行 /代码块代码块a结束结束4、Java控制语句控制语句程序转移相关语句程序转移相关语句 break continue语句用来结束本次循环,跳过循环体中下面尚未执行的语句,接着进行终止条件的判断,以决定是否继续循环。对于for语句,在进行终止条件的判断前,还要先执行迭代语句。它的格式为:continue; 也可以用continue跳转到括号指明的外层循环中,这时的格式为continue outerLable;4、Java控制语句控制语句程序转移相关语句程序转移相关语句 continueouter: for( int
27、i=0; i10; i+ ) /外层循环外层循环 inner: for( int j=0; j10; j+ ) /内层循环内层循环 if( ij ) continue outer; /内层循环结束内层循环结束 /外层循环结束外层循环结束for( int i= 0; i 10; i+ ) if( i = 5 ) continue; 4、Java控制语句控制语句程序转移相关语句程序转移相关语句 continuen return语句从当前方法中退出,返回到调用该方法的语句处,并从紧跟该语句的下一条语句继续程序的执行。返回语句有两种格式:return expression; /当方法需要返回某种类型数
28、据时return; /当方法的返回类型为void时 单独一条return语句放在方法中间时,会产生编译错误,因为其后的语句将不会执行到。若真需要退出方法,可以通过将return语句嵌入某些语句(如if-else)来使程序在未执行完方法中所有语句时退出。4、Java控制语句控制语句程序转移相关语句程序转移相关语句 return 在进行程序设计时,错误的产生是不可避免得。如何处理错误?把错误交给谁去处理?程序又该如何从错误中恢复?这是任何程序设计语言都必须面对和解决的问题。Java语言中是通过例外(Exception)来处理错误的。我们将在第六讲中详细介绍例外及其处理。4、Java控制语句控制语句
29、例外处理语句例外处理语句 try-catch-finally, throw5、Java类定义规范类定义规范 Java是一种面向对象的程序设计语言,具备面向对象技术的基本属性。类是Java中体现面相对象特征的主要内容,它是Java中的一种重要数据类型,是组成Java程序的基本要素。我们将在下一节课中详细介绍类的定义以及与之相关的对象、包、接口等概念。6、Java数组数组 在Java语言中,数组是一种最简单的复合数据类型(引用数据类型)。数组是有序数据的集合,数组中的每个元素具有相同的数据类型,可以用一个统一的数组名和下标来唯一地确定数组中的元素。数组有一维数组和多维数组。我们将在后面的课程中介绍
30、。n多数编程语言都有预选编译好的类库以支持各种特定的功能n在Java中,类库以包(package)的形式提供n不同版本的Java提供不同的包,以面向特定的应用nJava2平台包括标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本7、Java开发类库组成开发类库组成nStandard Edition J2SE包含那些构成Java语言核心 (标准版)的类。n数据库连接、接口定义、输入/输出、网络编程nEnterprise Edition J2EE 包含J2SE 中的类,并且还包 (企业版) 含用于开发企业级应用的类。nEJB、servlet、JSP、XML、事务控制nMicro E
31、dition J2ME 包含J2SE中一部分类,用于 (微缩版) 消费类电子产品的软件开发。n呼机、智能卡、手机、PDA、机顶盒7、Java开发类库组成开发类库组成Java2的三个版本的三个版本 Java提供了丰富的标准类来帮助程序设计者更方便快捷地编写程序,这些标准类组成了类包,主要有:java.lang java.awtjava.applet java.awt.imagejava.awt.peer java.util 除了java.lang之外,其余类包都不是java语言所必须的。7、Java开发类库组成开发类库组成J2SE的类包的类包nLanguagejava.lang构成Java语言核
32、心的类nObject, Math, String, Number, Exception, System, Runtime nUtilitiesjava.util提供实用的数据结构 nVector, Stack, Hashtable / Colloection, List, Set, Map nI/Ojava.io提供多种类型的输出/输出nInputStream, OutputStream, Reader, Writer, RandomAccessFile, FilenTextjava.text文本/日期/数字/消息的本地化支持nNumberFormat, DateFormat, and Col
33、latornMathjava.math提供任意精度的整数和浮点数运算nAWT java.awt用户接口设计和事件处理nSwingjavax.swing提供全Java的,在任何平台上表现都相同的轻量级构件7、Java开发类库组成开发类库组成J2SE的类包的类包nJavaxjavax 对Java语言的扩展nAppletjava.applet 用于创建Applet的类nBeansjava.beans 用于开发JavaBeans的类nReflectionjava.lang.reflect 用于动态获取类信息的类nSQLjava.sql 提供对数据库中数据的访问和处理nConnection, Resul
34、tSet, StatementnRMIjava.rmi 支持分布式编程nN 支持开发网络应用的类nSocket, URL, URLConnectionnSecurityjava.security支持访问控制和信息安全的类n用于访问控制,防止非信任代码执行关键操作n认证相关的类,实现了消息摘要和数字签名与数字认证等7、Java开发类库组成开发类库组成J2SE的类包的类包(1)java.lang 本类包中包含了各种定义java语言时必须的类,这些类能够以其他类不能使用的方式访问java的内部。任何java程序都将自动引入这个包。其中的类包括: Object类:java中最原始、最重要的类,每个java类都是它的子类,它实现了每个类都必须具有的基本方法。 基本类型包装器:Boolean, Character, Number, Double, Float, Integer, Long。 String类:字符串类。 Math类:数学
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 38278.1-2026全息防伪产品技术条件第1部分:全息防伪产品通用技术条件
- T/ZHHX 006-2025主要鲜切花流通规范
- T/HZFDS 001-2025体外诊断试剂出口质量管理能力评价规范
- T/CMAM M55-2025溢血症(免疫性血小板减少症)蒙医诊疗指南
- T/CARD 057-2024脑卒中重症康复服务指南
- T/CSCMA 0004-2023出口工程机械二手设备 评估服务规范
- 高校产学研合作基础培训
- 2025~2026学年广东省茂名市高州市北师大版六年级上册阶段练习(三)数学试卷【附答案】
- PHP后端面试题及详细答案(实战完整版)
- 引水隧洞衬砌及防渗堵漏施工方案
- 2026年保密培训考试题带答案(完整版)
- 中国邮政集团招聘考试历年真题
- 2026年一级造价师案例考试真题及答案
- 回复客户投诉的的质量整改函(6篇)
- 2026年春季云南云天化股份有限公司招聘(校园招聘)笔试历年参考题库附带答案详解
- 抖音【服饰户外行业IP】山山而川-雪山篇招商方案
- 测绘安全生产事故报告及处置办法
- PICC导管继发异位案例分析
- 《烹饪化学》课件(共七章)
- 胎儿窘迫教学课件
- 人教版数学五年级上册第三单元第三课时 商的近似数 同步测试(含解析)
评论
0/150
提交评论