《JAVA语言面向对象程序设计 教学课件 ppt 作者 马俊 ppt 2JAVA》由会员分享,可在线阅读,更多相关《JAVA语言面向对象程序设计 教学课件 ppt 作者 马俊 ppt 2JAVA(43页珍藏版)》请在金锄头文库上搜索。
1、第二章,Java 编程基础,2,掌握如何定义标识符 掌握 Java 的关键字 了解 Java 的基本类型 了解并掌握 String 类 掌握 Java 的程序控制流程 掌握数组的定义方法 掌握 java.lang.Math 类,目标,3,Java 语言提供三种类型的注释: 单行注释 多行注释 文档注释,以 / 开始,并以换行符结束,以 /* 开始,并以 */ 结束,以 /* 开始,并以 */ 结束, 注释中的每一行都必须以 * 开始。 使用javadoc工具从源代码和文档注释中将信息取出,然后转换为HTML文件。,注释,4,关键字2-1,原始数据类型 byte short int long f
2、loat double char boolean 循环关键字 do while for break continue,分支关键字 if else switch case default break 方法、变量和类修饰符 private public protected final static abstract synchronized volatile,5,关键字2-2,异常处理 try catch finally throw throws 对象相关关键字 new extends implements class instanceof this super,字面值常量 false true
3、null 方法相关关键字 return void 包相关关键字 package import,6,基本数据类型,Java 共有八种基本数据类型: 四种整数类型(byte、short、int、long) 两种浮点数类型(float、double) 一种字符类型(char) 一种布尔类型(boolean),7,整型、浮点型数据类型,8,字符、布尔数据类型,9,转义字符,n 换行 t 制标位 v 垂直制表 b 退格 r 回车 f 走纸换页 单引号 斜杠 ” 双引号,10,字符串,创建一个 String 类的实例: String strName1 = “Humpty dumpty”; /字符串字面量
4、String strName2 = new String(“Egg“); 两个或多个字符串可以用“+”运算符合并起来。例如: strName3 = strName1+ “ is the name of an “ + strName2; 字符串的长度可以通过 String 类中的函数计算。例如: int numLength = strName2.length(); 也可将数字添加到字符串类型中。例如: String strVar = “Mark“ + 1;,11,字符串池,Java 程序可包含许多字符串字面量 “字符串池”存放在程序中创建的所有字符串字面量 任何时候创建字符串字面量,系统都会搜索
5、字符串池,查看是否存在该字符串字面量。,12,String 类方法,charAt() : 返回字符串中某个特定位置的字符 indexOf() :返回字符串中某个特定字符或子字符串首次出现的索引 toUpperCase() : 将字符串内的所有字符从小写改为大写 toLowerCase() : 将字符串内的所有字符从大写改为小写,13,数据类型的转换,xxx.toString()将包装类对象转换为字符串 xxx.valueOf(String s)将字符串转换为相应的类型 “”+表达式,14,标识符,在Java中标识符的命名必须符合以下规则: 标识符必须以字母或下划线或 $ 符号开始。其余字符可以
6、是字母、数字、$ 符号和下划线。 标识符只能包含两个特殊字符,即下划线 (_) 和美元符号 ($)。不允许有任何其他特殊字符。 标识符不能包含空格。 标识符不能是关键字,表示指定给变量、方法和类的名称,以便编译器可唯一标识它们。,15,变量,变量是在程序执行期间可根据需要经常变化的值 变量具有 3 个特性: 名称 : 标识符 初始值 :为其赋值或者是保留缺省值 作用域 : 在不同程序块中的可用性及生命周期 变量的4个属性 名称 类型 当前值 地址,16,算术运算符,17,关系运算符,关系运算符用于测试两个操作数之间的关系。 关系表达式将返回一个布尔结果。,18,逻辑运算符,逻辑运算符与布尔操作
7、数一起使用,19,位运算符,用于 int、short、long、byte 和 char 数据类型,20,赋值运算符,一次可以为多个变量赋值,如: int a = 20000; int p,q,r,s; p = q = r = s = a;,赋值运算符 (=) 用于为变量赋值,X OP=YX=X OP Y,21,三元运算符 (?:),三元运算符 (? :) 可以替代 if-else 结构,class TernaryOp public static void main(String args) int salary,daysPresent = 30; salary = daysPresent =
8、20 ? 2000 : 3000; System.out.println(“您本月薪资为 $“+salary); ,22,Instanceof 运算符,class InstanceOfDemo public static void main (String args ) InstanceOfDemo t = new InstanceOfDemo( ); if (t instanceof InstanceOfDemo) System.out.println (“T是InstanceOfDemo 的实例“); else System.out.println (“T不是InstanceOfDemo
9、的实例!“); ,可以确定对象是否属于一个特定的类,23,编程规范,类名和接口名:每个单词首字母大写 方法名和变量名:第一个单词首字母小写,其余每个单词首字母大写,单复数要分开。 包名:采用小写形式 常量名:采用大写形式。单词之间以下画线“_”隔开。,在SUN的java技术网站上公布了java编程规范,网址为http:/ 包 2-1,该包中包含的类是 Java编程语言设计的基础 其中比较重要的类包括: Object Class 封装类 Void 类,类体系结构的根,封装对象或接口运行时的状态,封装基本数据类型,为基本数据类型建立对象表达式,有一个TYPE域,该域保存对类型void的Class对
10、象的引用,26,java.lang 包 2-2,Math 类 String 和 StringBuffer ClassLoader Process Runtime SecurityManager System,提供一些常用的数学运算的方法,提供常用的字符串运算,提供“系统操作”,可以管理类的动态加载、外部进程的创建、主机环境查询(如一天中的时间)及安全策略的执行等,27,java.lang.Math 2-1,java.lang.Math 类中可用的 static 方法有: abs() : 返回参数的绝对值 ceil() : 返回大于或等于参数的最小整数 random() : 返回类型为 doub
11、le 且介于 0.0 和 1.0 之间的随机数 sqrt() sin() cos() exp(),28,java.lang.Math 2-2,floor() : 返回小于或等于参数的最大整数 max() : 返回两个参数值中的大者 min() : 返回两个参数值中的小者 round(): 返回双精度浮点数参数四舍五入后的整数或长整数 log() pow() toDegrees(),29,数据的输出,1. 利用System.out.println()和System.out.print()来输出数据。 2利用和C兼容的System.out.printf()来输出数据 System.out.prin
12、tf的功能完全类似C语言中的printf函数。 pringf的一般格式: printf(格式控制部分,表达式1,表达式2,表达式n); 这里的用法与C语言相同,这里不再累述。,30,数据的输入,1数据的输入:Scanner Scanner是JDK1.5新增的一个类,可以使用该类创建一个对象: Scanner reader=new Scanner(System.in); 然后reader对象调用下列方法(函数),读取用户在命令行输入的各种数据类型, nextByte(), nextDouble(), nextFloat(), nextInt(), nextLine(),nextLong(), n
13、extShort()。 2. 利用System.in.read()来自己编写输入方法,31,控制结构,选择 if-else switch 循环 while do-while for,Java 支持下列控制结构:选择、循环、跳转,跳转 break continue,32,if-else 选择语句,if-else 结构的语法为:,if (条件) 语句1; else 语句2;,if (条件) 语句组1; else 语句组2; ,if和else块中只有一条语句,if和else块中有多条语句,33,switch 选择语句,switch 结构的语法为:,switch(表达式) case 常量值 1: 语句
14、(组); break; case 常量值 2: 语句(组); break; case 常量值 N: 语句(组); break; default: 语句(组); ,表达式必须为byte,short,int或char类型,常量值必须是与表达式类型兼容的特定的一个常量 不允许有重复的case值,34,循环,while 循环 while(条件) 语句组; do-while循环 do 语句组; while(条件); for 循环 for(变量初始化; 条件; 递增或递减变量的值) 语句组; ,35,break 和 continue 语句,break 语句在循环中用于立即从当前循环终止控制。 遇到 bre
15、ak 语句时,将跳出当前循环。 continue 语句则是从其调用处跳至循环的开始处。 continue 语句之后的语句将不再执行。,36,数组对象,属于复杂数据类型 由类型相同的元素组成的有顺序的数据集合 数组是固定的不能扩展 可以存储基本数据类型或对象 通过数组名和下标可以访问各元素,37,创建数组,通用的一维数组的声明格式是: type var_name; 举例: int array_int ; String str; 利用new 来为数组型变量分配内存空间 array_int=new int10; str=new String10; 两步可以合并,如: String str=new String10;,38,命令行参数,Java 应用程序可以从命令行中接收任意数量的参数 每个参数被视为字符串分别存储在main函数的参数数组中 可以使用双引号将多个字符串作为一个整体显示,39,命令行参数示例,class ComndLineArg1 public static void main(String args ) for(int i=0;iargs.length;i+) System.out.println(argsi); ,输出 结果,输出 结果,40,Date & Calendar,The class Date represents a specific