java2(Java语言基础一)课件

上传人:我*** 文档编号:144988079 上传时间:2020-09-15 格式:PPT 页数:69 大小:242KB
返回 下载 相关 举报
java2(Java语言基础一)课件_第1页
第1页 / 共69页
java2(Java语言基础一)课件_第2页
第2页 / 共69页
java2(Java语言基础一)课件_第3页
第3页 / 共69页
java2(Java语言基础一)课件_第4页
第4页 / 共69页
java2(Java语言基础一)课件_第5页
第5页 / 共69页
点击查看更多>>
资源描述

《java2(Java语言基础一)课件》由会员分享,可在线阅读,更多相关《java2(Java语言基础一)课件(69页珍藏版)》请在金锄头文库上搜索。

1、Java 语言基础,Lecture2,提纲,Java语言的词法 变量和常量 简单数据类型 操作符和表达式 流程控制,Java语言的词法,分号 块 空白 注释 标识符 关键字,分号,在Java 编程语言中,语句是一行由分号(;)终止的代码。 例如 totals=a+b+c+d+e+f; 与下式相同 total=a+b+c+ d+e+f;,块,一个块(block)或一个复合语句是以上括号和下括号()为边界的语句集合;块语句也被用来组合属于某个类的语句。 一个块可被用在一个类的定义中 public class Date int day; int month; int year; ,块,块语句可以被嵌

2、套 语句块可被嵌套。HelloWorldApp 类由main方法构成,这个方法就是一个语句块,它是一个独立单元,单元本身可作为在类HelloWorldApp 块中的一组事务之一。 public class HelloWorldApp public static void main (String args) System.out.println (Hello World!); ,块,其它一些块语句或组的例子如下: / 一个语句块 x = y + 1; y = x + 1; /一个语句嵌套再另一个语句中 while ( i large ) a = a + i; if ( a = max ) b

3、= b + a; / nested block is here a = 0; ,空白,Java 程序中允许任意多的空白,在源代码元素之间允许空白,空白的数量不限。空白(包括空格、tabs 和新行)可以改善你对源代码的视觉感受。 int x; x = 23 * 54; int x; x = 23 + 54; ,注释,Java语言提供三种注释方法 单行注释:/ 多行注释:/* */ 文档注释方法:/* */ 注释的原则 注释时以增加代码的清晰度为目的 保存注释的简洁 在写代码之前先写注释 在写注释时不但要写出做什么,还要写出为什么这么做。,标识符,在Java 编程语言中,标识符是赋予变量、类或方法

4、的名称。 变量名的开头可以是任何字母、下划线(_)或者是货币符号($) 标识符开始不能是数字 不能以关键字作为标识符 Java标识符是区分大小写的 标识符的长度不受限制,例子,有效标识符如下: identifier userName User_name _sys_varl $change String 和string是不同的,abstract double int super boolean else interface switch break extends long synchronized byte final native this case finally new throw ca

5、tch float package throws char for private transient class goto* protected try const* if public void continue implements return volatile default import short while do instanceof static,关键字,目前Java语言一共定义了48个保留关键字。这些关键字与运算符和分隔符的语法一起构成Java语言的定义。,关键字,关键字对Java 技术编译器有特殊的含义,它们可标识数据类型名或程序构造(construct)名。以下是有关关

6、键字的重要注意事项: true、false 和null 为小写,而不是象在C+语言中那样为大写。严格地讲,它们不是关键字,而是文字。然而,这种区别是理论上的。 无sizeof 运算符;所有类型的长度和表示是固定的,不依赖执行。 goto 和const 不是Java 编程语言中使用的关键字。,常量和变量,常量定义 在程序运行过程中,不再发生改变的量称为常量。用保留字final来实现 final typeSpecifier varName =value,varName=value; 如:final int NUM=100; 常量分类 整数常量 浮点数常量 字符常量 布尔常量,十进制常量 如100,

7、200 注意第一位不能为0 八进制常量 以0开头 如072,065 十六进制常量 以0 x或0X开头 如0XFF 长整形常量 以L或l结尾 缺省情况下为int整形,32位,长整形常量为64位。,整数常量,浮点常量,默认情况下浮点型常量是double型的 后面带f的为float类型 如 2e3f 3.f 4f 5.027763e+34 3.6,字符常量,用单引号包起来 英文字母a 、 A 数字1 、2 转义序列,布尔常量 true, false true1, false0,布尔常量,语法 modifier* type id =value ,id =value type: byte|short|i

8、nt|long|char|float|double|boolean|class ID|interface ID value: constants or expressions of the type initialization: Assignment (id=value ), Default (0,null) modifier: static | final | public | protected | private |abstract |native | synchronized,变量,作用域: 有效范围 在一个作用域中声明的变量对于该作用域外定义的代码是不可见的 外部作用域中声明的对象

9、在内部作用域是可见的 变量进入其作用域时被创建,离开其作用域时被清除。只有离开作用域它就不再保存它们的值了 不能重复声明变量,变量作用域例子,/Demonstrate block scope class Scope public static void main(String args) int x; x = 10; if (x=10) int y = 20; System.out.println(“x and y :” + x + “ ” + y); x = y * 2; y = 100; System.out.println(“x is ” + x ); ,变量作用域例子,/This is

10、 program will not compile class Scopeerr public static void main(String args) int bar = 1; int bar = 2; ,Java 数据类型,强类型: 安全性和鲁棒性,类型分类 简单(基本)数据类型: byte, short, int, long, char, float, double, boolean 复合(引用)数据类型: Array,Class,Interface,简单数据类型,Type,Size,Range,Default,注意,(1) 符号: 所有的整数都是有符号的 (2) C中的整数 有符号或

11、无符号 int j; 定义一个整数, 大小由CPU决定,Unicode定义的国际化的字符集能表示迄今为止人类语言的所有字符集。它是几十个字符集的统一,例如拉丁文,希腊语,阿拉伯语, 古代斯拉夫语,希伯来语,日文片假名,匈牙利语等等 ,这也是为了可移植性特点设置的。,Unicode,编码: 国际化,Unicode(16),ISO-Latin-1(8) ,ASCII(7),表示: 没有Unicode 字符编辑器 ASCII(7), ISO-Latin-1(8) Unicode(16),自动转换 : (1) 这2种类型是兼容的 (2) 目的类型的范围要比来源类型的大 (3) 基本规律: 表示的范围

12、byteint, charint, charint, longfloat, floatdouble,类型转换,强制转换 : 缩小 (1) “由大缩小” (2) 语法: (type)value (3) 例如: doublelong, floatint, doublefloat (4) instanceof:,类型转换,整型,实型,字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算,转换从低级到高级;,(1)byte a=40, b=50, c=100; int d=a*b/c; a*b is lifted as int before divided by c,类型转换示

13、例,(2) byte b=50; b=b*2;,(3) byte b=42; char c=a; short s=1024; int i=50000; float f=5.67f; double d=.1234 ? (f*b)+(i/c)-(d*s) float+int-double double,(4) short s=-134; byte b=(byte)s; / b=122,类型转换示例,class Lecture02 public static void main(String args) double fv1, fv2; int iv1 = 123; fv1 = iv1/50; fv

14、2 = iv1/50.0; System.out.println(fv1: + fv1); System.out.println(fv2: + fv2); ,Java 操作符,() + - ! instanceof *,/ % + - , = = != i+=3; /等效于i=i+3;,算术运算,算术运算符为如下几种:+,-,*,/,%,+,-,算术运算,对整数进行“/”除法运算时,所有的余数要被舍去 int i =9; int j = 4; 求 i/j的值 +a,-a表示先对a加一,然后对a进行其他的操作,而a+,a是先对a进行操作,然后对a进行加一操作。 int i = 0 count =

15、 2 + i + 求i和count的值 int i = 0 count = 2 + +i 求i和count的值,位运算,运算符有如下几种:, b=00111001;则有如下结果: a3 =11110011 a3=00010011; a,关系运算,关系运算符为如下几种:,=,=,=,!=,关系运算,例如: count3; i=0; n!=-1; 注意:比较运算符的表达式的值为布尔型。,逻辑运算,逻辑运算符的类型有如下几种:|,,逻辑运算,逻辑与或者逻辑或的运算是按照从左向右检测,对于逻辑或,如果第一个表达式为真,那么后面的表达式将不再计算,对于逻辑与,如果第一个表达式为假,那么其后面的表达式将不

16、再计算,例如: class test public static void main(String args) int i=0; System.out.println(Test: + (23) | (0i+); System.out.println(“i: + i); ,条件运算,? : 表示if () then else a ? x : y 如果a为真,则运行x,否则运行y 例如: result=(sum=0) ? 1 : num/sum);,优先级,优先级是指同一个式子中多个运算符被执行的次序,同一级里的操作符具有相同的优先级,相同优先级的操作符号相遇时,根据结合性决定运算次序 由于优先级和结合性都比较难记忆,所以最好用括号括起来指定其优先

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号