《2Java语言基础上ppt课件》由会员分享,可在线阅读,更多相关《2Java语言基础上ppt课件(40页珍藏版)》请在金锄头文库上搜索。
1、” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)第二课第二课JavaJava语言基础语言基础( (上上) )” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)1、Java语言跨平台还是Java虚拟机跨平台?2、Java源文件与字节码文件的后缀名分别是什么?3、简述开发Java程序的一般步骤?4、Java中的内存管理需
2、要程序员来管理吗?5、JDK安装好之后,其bin、lib两个目录分别用于存放什么文件?6、定义一个Java类的关键字是什么?7、Java程序中的入口方法是哪个方法,写法是固定的吗?8、Java程序的语句使用什么符号隔开,Java中区分大小写吗?9、Java中的有哪些注释,他们有什么区别?10、一个Java源文件中可以包含多个类定义吗,可以包含多个public类吗,public类的类名与源文件名有什么联系?11、SDK、JDK、JRE、IDE分别代表什么,有什么区别?回回 顾顾” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不
3、是为Sun的设备写程序”Scott McNealy(Sun首席执行官)本课案例本课案例使用嵌套的两层for循环编写打印显示9X9乘法表” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)本章目标本章目标Java中的变量和数据类型Java中变量的作用域规则Java数据类型转换Java中的输出语句Java中的运算符和表达式程序控制结构” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun
4、的设备写程序”Scott McNealy(Sun首席执行官)简单介绍简单介绍MyEclipse工具工具MyEclipse是用于开发Java程序的IDE,该IDE提供了极为强大的功能,方便专业程序员开发Java程序,有了它我们不必再控制台书写javac和java命令了,我们只需要告诉MyEclipse我们的JDK安装位置,它会自动的帮我们调用javac和java命令首先我们打开MyEclipse,点击窗口选项;在弹出的对话框左方树级菜单中继续点击JavaInstalled JREs之后在右方点击Add.在弹出的对话框中点击浏览找到你安装JDK的安装目录即可,如下图:” 如果十年前Sun没有做Ja
5、va,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)MyEclipse的使用界面简要说明” 如果十年前Sun没有
6、做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)变量变量变量是内存中的一块存储区域,是存储数据的基本单元;Java程序中每个变量都属于特定的数据类型声明变量的语法:数据类型 标识符 = 值;type varName=value,varName=value如:int num;float mon
7、ey = 123.45f;char ch1, ch2 = A;” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)Java变量的分类变量的分类按被声明的位置分类局部变量:方法或语句块内成员变量:方法外部,类的内部留意:类外面不能有变量的声明按所属的数据类型分类基本数据类型引用数据类型” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun
8、首席执行官)数据类型数据类型数据类型用来确定要存储在内存单元中的数据的类型;在Java中,数据类型被区分成两个种类:原始数据类型引用数据类型” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)原始数据类型原始数据类型原始数据类型是最简单的数据形式,与C的基本数据类型很相似:数据类型大小位取值范围说 明boolean 布尔型1true/false用于存储真值/假值byte 字节型8-128127数据存储在内存中的最原始形态char 字符型16u0000uFFF
9、F用于存储字符,以Unicode编码方式short 短整型16-3276832767略(参见P20表2.1)int 整 型32-231231-1 略(参见P20表2.1)long 长整型64-263263-1 略(参见P20表2.1)float 浮点型32略略(参见P20表2.1)double 双精度64略略(参见P20表2.1)” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)逻辑型逻辑型booleanboolean适于逻辑运算,一般用于程序流程控制。b
10、oolean类型只允许取true或false,不可以用0或非零来代替true和false,这点跟C语言不同。用法举例boolean flag = true;if(flag) /do something” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)字符型字符型charchar型数据用来表示通常意义上的“字符”字符常量为用单引号括起来的单个字符,每个字符占2个字节,称为Unicode字符,例如char eChar = A;char cChar=中;注:Un
11、icode是全球语言统一字符编码Java中还允许使用来将其后的字符转变为其他的含义,例如:char c2 = n n表示换行” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)引用数据类型引用数据类型在Java中,除了上述8种原始数据类型的变量以外,其余的全都属于引用数据类型,其中包括:数组对象存储在引用类型变量中的值是该变量表示的值的地址;可以借用C语言中指针的概念来理解引用数据类型。” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.
12、Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)标识符命名规则标识符命名规则变量、函数、数组、对象、类和接口等等都需要命名,这些名称统称为标识符Java中对于标识符的命名规则作了如下限制:只能由英文字母、数字、下划线“_和“$”符号组成;必须以英文字母、“_或“$”开头,即不能以数字开头;除“_和“$”以外,不能包含其它任何特殊字符;不能与关键字冲突;严格区分大小写。” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott Mc
13、Nealy(Sun首席执行官)变量的作用域和生命周期变量的作用域和生命周期变量 的作用域指变量起作用的范围,说明变量在什么部分可以被访问变量的生命周期是指变量在内存中存在的周期,即什么时候分配空间,什么时候销毁CJava变量声明程序中所有使用到的变量应该在程序开始部分预先进行声明。成员变量的声明无先后顺序,方法体内的局部变量声明与C的规则相同,先声明后使用作用域规则变量的作用域属于声明它的函数范围之内,变量的最小作用域是函数。变量的作用域属于声明它的代码块,变量的最小作用域是包含它的一对之间。” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为wind
14、ows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)数据类型转换数据类型转换程序中经常会遇到要将数据类型进行转换的情况如:在一个表达式中存在不同类型的操作数时数据类型转换有两种情况: 自动类型转换 强制类型转换” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)自动类型转换自动类型转换自动类型转换也称作隐式类型转换将一种类型的变量赋值给另一种类型的变量时,只要满足以下条件,就会发生自动类型转换两种类型之间相互兼容目标类型大
15、于源类型(即类型提升)如:char ch = A;int num = ch;float f = num;double d = f;/类型转换自动发生,无需显式说明” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)强制类型转换强制类型转换强制类型转换也称作显式类型转换;如果被转换的值的数据类型大于其目标类型,将会丢失部分信息如:int x = 65;char ch = x;这样的语句将报错,因为char类型小于int类型,编译器无法将其自动转换,只能进行强制
16、转换:int x = 65;char ch = (char)x;” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)类型提升规则类型提升规则不难看出,在有类型提升的情况下,编译器将自动进行类型转换,否则就要进行强制类型转换类型提升应遵循如下规则:两种类型必须兼容,且目标类型大于源类型,例如:byte、char和short类型都可以提升为int型。对于表达式而言,其最终结果将会与表达式中最高的数据类型相同。” 如果十年前Sun没有做Java,人们便会写.Net
17、程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)输出语句输出语句如果要将某些信息打印到屏幕上,就必须使用输出语句使用System.out.println()实现换行输出效果;使用System.out.print()实现输出但不换行效果;无论输出什么类型的数据,只需将数据作为参数传递给它们即可,而无需像C语言中那样,运用%s、%d之类的控制字符.如:int a = 10;float f = 3.14f;System.out.println(a);System.out.print(f);System.out.p
18、rintln(X);” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)使用转义字符控制输出格式使用转义字符控制输出格式有些时候,我们可能会需要对输出格式进行控制,这就使用到了转义字符;以下是一些常用的转义字符:转义字符说 明n换行符,将光标移到下一行r回车符,将光标移到当前行的开头t制表符,将光标移到下一制表位输出反斜线输出单引号输出双引号” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而
19、不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)运算符号和表达式运算符号和表达式运算符是通过一定的运算规则操作一个或多个操作数,并生成结果的特定符号运算符和操作数的有效组合称为表达式Java提供了一系列丰富的运算符,包括:算术运算符关系运算符逻辑运算符条件运算符赋值运算符” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)算术运算符算术运算符算术运算符主要用于数学计算,一般使用数值作为操作数:运算符说 明一元-一元减,即取负+自增,如
20、:+a等价于a = a + 1-自减,如:-a等价于a = a 1二元+加法,返回两个操作数的和-减法,返回两个操作数的差*乘法,返回两个操作数的积/除法,返回两个操作数的商%取模,返回两个操作数整除后的余数” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)关系运算符关系运算符关系运算符可以测试两个操作数之间的关系但不会改变操作数的值),关系表达式的结果为boolean型true/false:运算符说 明=等于,检查两个操作数是否相等!=不等于,检查两个操
21、作数是否不相等大于,检查左操作数是否大于右操作数=大于等于,检查左操作数是否大于或等于右操作数小于,检查左操作数是否小于右操作数、=、=、=和!=5逻辑运算符:&、|、&和|6条件运算符:? :7赋值运算符:=、*=、/=、%=、+=和-=” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)控制流语句控制流语句一般情况下,程序是从上往下依次顺序执行的;但很多时候,我们需要改变程序执行的流程,这就使用到了控制流语句;控制流语句包括:判断语句循环语句跳转语句”
22、如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)判断语句判断语句判断语句也称作条件语句或分支语句;判断语句主要用来控制程序在何种情况下执行某一部分;判断语句包括:if语句ifelse语句ifelse if语句switchcase语句” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)循环语句循环语句循环语句也称作迭代语句;
23、循环语句可用于重复执行相同的操作;循环语句包括:while语句dowhile语句for语句” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)跳转语句跳转语句跳转语句允许以非线性的方式执行程序,可以将控制权转到程序的其它部分;跳转语句包括:break语句continue语句Java抛弃了C语言中的goto语句。” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Sco
24、tt McNealy(Sun首席执行官)总结总结Java中的数据类型大体上分为两种:原始数据类型和引用数据类型变量是存储数据的基本单位运算符和流程控制基本上与C相似” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)作作 业业使用嵌套的两层for循环编写打印显示9X9乘法表” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)