java语言基础ppt课件.ppt_第1页
java语言基础ppt课件.ppt_第2页
java语言基础ppt课件.ppt_第3页
java语言基础ppt课件.ppt_第4页
java语言基础ppt课件.ppt_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章Java语言基础 主要内容 掌握Java程序结构 标识符 注释和分隔符如何定义变量和常量数组的定义与使用选择分支语句 循环语句 跳转语句基本类型 特别注意字符型 浮点型 了解运算符及表达式 运算符的优先级 数据类型转换 2 1程序结构 package import class类名1 属性定义方法名1 方法名2 class类名2 Java语言的源代码由一个或多个编译单元 compilationunit 组成 每个编译单元只能包含下列内容 1 一个程序包语句 packagestatement 2 导入语句 importstatements 3 类的声明 classdeclarations 4 接口声明 interfacedeclarations 程序结构 每个Java语言的编译单元可包含多个类或接口 但是每个编译单元最多只能有一个类或接口是公共的每个编译单元就是一个以 java为后缀的Java语言源程序文件一个程序可包括若干个类 各类之间存在并列 继承和包含关系 编译后每个类产生一个 class文件 包是每个Java系统用来组织类的组织 功能作用和来源相关的类通常放在同一个包中 java的名字空间和包 作为一种在整个Internet上动态装载模块的语言 Java特别注意避免名字空间的冲突 所有的方法和属性都在类中定义 是类的组成部分 每个类又是包的组成部分 全限定名 包名 类名 方法名import打开一个包后 可直接指定该包中的类名 在本类中 可以直接使用方法名及属性名 2 2标识符 注释和分隔符 标识符用来标记语言中元素名称Java标识符的规则 以字母 下划线或美元符 开头字母 下划线 数字组成的序列 而且 标识符的长度任意标识符分为两类 保留字用户定义标识符 保留字 一律小写 程序设计者根据自己的需要定义的类 变量 方法 接口的名字 用户定义标识符 注意 1 禁止用保留字作为用户标识符 2 遵守先定义后使用的原则 即只有定义了的标识符 才可在语句部分使用 合法标识符 A a1 Systembol square ex sa不合法标识符 1a 以数字1开头 break 禁止使用保留字 TWOWORDS 含有空格 NO 有圆点 Java有三种注释形式 单行注释 表示从此向后 直到行尾都是注释 块注释 在 和 之间都是注释 块注释不能嵌套 文档注释 所有在 和 之间的内容可以用来自动形成文档 2 2标识符 注释和分隔符 空格 逗号 分号及行结束符称为分隔符 2 2标识符 注释和分隔符 注意 分隔符 逗号 分号等 不能是中文下的 变量 Java的变量有两种 局部变量 类成员变量 变量必须先说明后使用 变量的说明形式如下 类型变量名表intk Stringss Studentst1 HelloStudenths 当变量名列表中说明多个变量为同一类型时 变量名之间用逗号分隔 intI j k 注意 局部变量在使用前必须给定初值 否则 Java将不编译 而类成员变量无此要求 2 3变量与常量 习惯上 变量名以小写字母开头 若一个变量名由超过一个单词所组成 则第一个单词之后的所有单词都以大写字母开头 以便于理解该变量名 例如 anIntVar myName 变量名 变量类型用于表述数据的格式和结构 Java中的数据类型可分为两大类 基本数据类型 整数浮点数字符布尔型构造数据类型 引用类型 Java语言中构造类型用类来描述 变量的类型 基本数据类型表 注 缺省值就是默认的初值 只对成员变量有用 局部变量在使用前必须人为地给定初值 变量 变量类型变量名intI j i floata 3 0fdoubleb 3 0d或doubleb 3 0booleanisFalse truechara A Strings thisisabook 变量的作用域是指什么范围的程序可以访问该变量 变量说明时就确定了其作用域 变量按作用域分为 类成员变量方法参数局部变量 变量的作用域 常量常量是指在程序运行过程中其值不变的量 常量的表示形式 3 abc a 4 5f true false 3 3 常量 2 4基本类型和一维数组 整型浮点型布尔型字符型一维数组 采用不同的整数类型表达同一数值 在存储单元中的存储情况是不同的 下图表示的是数值20的不同存储形式 long型 2 4 1整型 整数变量有三种表示形式 1 十进制整数 2 八进制整数 3 十六进制整数420520 x2A0X2aJava缺省整数常量类型为int类型 如果要表示long类型整数需要在整数后加上后缀L或l 2 4 1 1整数变量 整型变量类型有int short long byte 由于byte和short类型表示的数范围较小 不常使用 整型变量说明如下 例3 2intanIntVar 说明变量anIntVar是int整型longaLongVar 12345 说明变量aLongVar是long整 型 并赋以初值12345shortaShortVar 说明变量aShortVar是short整型byteaByteVar 说明变量aByteVar是byte整型 2 4 1 2整数变量 浮点型包括两种不同的实型 float和double 1Java缺省的浮点型常数是double型2如果要表示float型 要在数字后加后缀F或f 如果要表示double型 也可以在数字后加后缀D或d 2 4 2浮点型 浮点型有两种表示法 1 浮点型十进制表示法 3 5f0 0f123 45f 678 9f要注意 采用十进制表示法时 小数点的两侧都必须有数字 缺一不可 如 123 和 56都是不合法的 2 4 2 1浮点型变量 2 浮点型科学表示法 1 234567E 12 1 2345678901 1012 尾数阶码注意 尾数必须有 但小数部分可无 阶码必须有 必须是整数 请看下列表示 E 6 缺尾数 3E 无阶码 2 E3 尾数出错 2E1 2 阶码非整数 2 4 2 1浮点型常量 布尔数据类型用于表达逻辑状态 布尔型数据只有两个值 true和false 注意 Java中不可将布尔类型看做整型值 2 4 3布尔型 字符类型数据只有一个字符 采用16位二进制Unicode编码表示 3 4 4 1字符型表示 字符用两个单引号括起来一个字符来表述 例如 A a 2 大 2 4 4字符型 字符型变量表述 转义字符Java允许在字符串中出现转义字符 转义字符见下表 字符串常量 一个字符串常量是括在两个双引号之间的字符序列 若两个双引号之间没有任何字符 则为空串 以下是字符串的一些例子 Thisisastringconstant JAVA Yousee Java语言把字符串常量当作String类型的一个对象来处理 以后有详细介绍 2 5运算符及表达式 运算符表达式 表达式是由操作数和运算符按一定语法形式组成的符号序列 以下是合法的表达式例如 a b a b a b name 李明 每个表达式经过运算后都会产生一个确定的值 一个常量或一个变量是最简单的表达式 表达式作为一个整体 如同一个操作数 还可以看成一个操作数参与到其他运算中 形成复杂的表达式 2 5 1表达式 运算符表明对操作数的运算方式 运算符按其要求的操作数个数分为 1 一元运算符如 2 二元运算符如 3 三元运算符如 运算符按其功能分为七类 1 算术运算符 a a a 1 2 关系运算符 5 条件运算符 6 赋值运算符 7 其他 分量运算符 下标运算符 实例运算instanceof 2 5 2运算符 单元运算符如 一元加 取正值 一元减 取负值 自加 自减 双元运算符如 加 减 乘 除 取余数 2 5 3算术运算符 1单目运算 一元运算 intx 10 y1 y2 y1 x x先加1 再赋于y1y2 x x先赋于y2 再自增1 2 5 3算术运算符 2双目运算符 1 操作数可以是整型 实型 字符型 2 运算的结果为int long float double例 a 7 5 8 3 4 3 0 1关系运算符有七种 instanceof 对象运算符 操作数 和 可作用于所有简单型别身上 instanceof用来确定一对象是否是某一指定类的对象 2 5 4关系运算符 1逻辑运算符 非 与 或 异或 这些运算符要求的操作数和结果值都是布尔型 2逻辑运算的直通计算 表达式后面对计算布尔值没有作用的部分忽略掉 2 5 5逻辑运算符 1位运算符用来操作基本整数类型中的二进制位 按位取反 按位与 按位或 按位异或 有符号二进制右移一定位 无符号二进制右移一定位 2 5 6位运算符 2boolean值被视为单一的位 可以执行 三种位运算 赋值运算的表述注意 赋值运算符 与数学的等号含义不同 变量名 表达式 例 x 4 算术运算符 位操作符和赋值运算符结合起来 形式如下 例 x y等价于x x y 2 5 7赋值运算符 Java中唯一的三元运算符 其格式如下 变量 含义是 当为真时 变量的值为的值 否则为的值 举例 见下页 2 5 8条件运算符 publicclasssss publicstaticvoidmain Stringargs intx 20 intabsX x 0 x x 如x 0 absX等于x 否则等于x的相反数System out println x的绝对值 absX 2 5 8条件运算符 2 6运算符的优先级 表达式写法的习惯 1 除非是简单的直观运算 应该尽量使用括号 2 尽量不要写太长的表达式 过长的表达式容易引起对求值次序的误解 3 有时为了表达清楚 可以引进多余的括号 2 6运算符的优先级 2 7数据类型转换 自动类型转换强制类型转换 Java中整型 实型 字符型数据可以混合运算 运算过程中 不同类型的数据会自动转换为同一类型 自动类型转换原则 从低数据类型向高数据类型转换即 byte char short int long float double注意 布尔型与其它基本类型之间不能转换举例 3 4 5 3 0 4 5 7 5 2 7 1自动类型转换 形式为 类型名 表达式例如 longl 156 byteb b byte l 2 7 2强制类型转换 注意 1 一般使用强制类型转换可能会导致数值溢出或精度的下降 应尽量避免 2 布尔型与其它基本类型之间不能转换 2 8简单语句和复合语句 变量说明语句赋值语句方法调用语句空语句标准输入输出复合语句 语句是程序的基本组成单位 一个基本的简单语句总是以分号结尾的 变量说明语句用来声明一个变量 变量说明语句的格式为 类型变量名1 变量名2 例 charc a inti 1 2 8 1变量声明语句 2 8 2赋值语句 赋值语句是将表达式的值赋给变量其格式为 变量 表达式 例 charc c a 方法调用语句的一般形式为 对象 方法名 实参数列表 例如 System out println Example 2 8 3方法调用语句 2 8 4空语句 空语句是什么都不做的语句 其形式为 这是一条空语句 2 9数组 数组类型属于复合数据类型 它是由类型相同的元素组成的有顺序的数据集合 特点 元素类型相同 元素有顺序 所有元素共用一个名称 2 9 1第一步数组的声明 格式 数组元素类型数组名 数组元素类型 数组名 举例 intmyarray doublearray double String str Point P 注意 声明数组时不能指定其长度inta 3 2 9 2第二步创建数组空间 在Java语言中 声明数组时不能指定它的长度 而是利用new来为数组型变量分配内存空间 我们将其称之为创建数组 myarray newint 10 array double newdouble 1000 String str newString 10 注意 数组创建后 系统自动为数组元素赋初值 2 9 3第三步数组的初始化 数组元素赋值 myarray 0 2 myarray 1 5 数组元素的默认初值 整型 0实型 0 0f或0 0d字符 0 类对象 null数组声明 创建空间 赋值一次完成 intarray int 1 2 3 4 5 6 7 String str Fortran QBasic Pascal 2 9 4数组的内存 栈内存和堆内存int x x newint 100 x null 的内存状态变化情况 2 9 5数组元素的使用 1声明 int x 2分配空间 x newint 10 3赋值 x 0 3 x 4 8 for inti 0 i 10 i x i i 使用数组时要注意的问题 空指针异常 没有分配空间就使用如何得到数组长度 数组名 length数组越界异常 下标越界 2 9 6多维数组 如何理解多维数组 Java中没有真正的多维数组 只有数组的数组 Java中只有数组的数组 定义一个多维数组 int xx xx newint 3 xx 0 newint 3 xx 1 newint 2 多维数组例子 intintArray newint 3 3 intintArray newint 3 intArray 0 newint 1 intArray 1 newint 3 intArray 2 newint 2 多维数组 多维数组中元素的引用方式 x 1 2 规则的多维数组可以在一条语句中产生 ints newint 1 2 多维数组的静态初始化 int xx 3 2 7 1 5 6 不出现new 将相关语句组合在一起就构成复合语句 复合语句由 括起来 内的每条语句的语法与上面介绍的一样 也叫一个语句块 2 11复合语句 2 12Java的流程控制语句 结构化程序设计的三种基本控制语句顺序按语句书写的先后顺序执行选择在若干路径中有条件地择一执行循环当某条件成立时 反复执行一段代码 2 12 1if条件语句 if 条件 语句块 else语句块 多重嵌套的if语句if 条件1 语句块1 elseif 条件2 语句块2 elseif 条件3 else语句块n 语句块用大括号括起的语句集合else与最近的if配合 2 12 2switch选择结构 switch 表达式 case常量1 语句块1 case常量n 语句块n default 语句块n 1 switch的例子SwitchDemo java 使用switch语句需要注意 表达式必须是符合byte char short和int类型的表达式 而不能使用浮点类型或long类型 也不能为一个字符串 要有用于跳转的break语句 switch语句中的每个case子句都必须对应一个单值 2 12 3循环结构 while 格式 while 循环条件 循环体 含义 当循环条件为true时 重复执行循环体 intx 2 while x 7 System out println x x x 注意 while表达式的括号后面一定不要写 2 12 4循环结构 do 格式 do 循环体 while 循环条件 含义 重复执行循环体 直到循环条件为false 2 12 5循环结构 for 格式 for 表达式1 表达式2 表达式3 循环体 表达式1 循环初值表达式2 布尔型表达式 循环条件表达式3 循环增量表达式 2 12 5控制转移语句 break语句 使程序的流程从一个语句块内部转移出去 通常在switch和循环语句中使用 continue语句 只能在循环语句中使用 其作用是终止当前这一轮的循环 直接进入下一轮的循环 Java的转移语句 Java没有goto语句break从一个封闭的语句块中 如switch 循环体中跳出来break标号从包含本break语句的标号指示的封闭语句中跳出来 while e1 aaa while e1 while e2 while e2 break breakaaa Java的转移语句 break语句 不带标号break语句从循环体内跳出至后面语句 结束当前循环体 循环嵌套时 break语句只跳出当前循环体 带

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论