第二章 Java基础.ppt

上传人:proposalcash356 文档编号:377097 上传时间:2018-10-08 格式:PPT 页数:75 大小:2.81MB
下载 相关 举报
第二章 Java基础.ppt_第1页
第1页 / 共75页
第二章 Java基础.ppt_第2页
第2页 / 共75页
第二章 Java基础.ppt_第3页
第3页 / 共75页
第二章 Java基础.ppt_第4页
第4页 / 共75页
第二章 Java基础.ppt_第5页
第5页 / 共75页
亲,该文档总共75页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、第二章 Java基础,1,本章目录,2.1 Java程序的结构 2.2 Java程序的一些特殊语句 2.3 常量 2.4 变量和数据类型 2.5 Java标识符和关键字 2.6 运算符和表达式,2,教学目标,了解Java程序的组成。 熟练掌握Java语言中的数据类型。 掌握Java中各类运算符的使用方法。 掌握Java中表达式的基本原理及使用方法,3,教学重点,数据类型、运算符和表达式是编程语言的基本元素,详细了解这些元素是掌握编程语言的基石。 本章首先详细介绍了数据类型,让读者能够了解变量的使用方法,接着讲解了Java语言的运算符,让读者明确Java编程中变量定义及使用的基本方法。 最后介绍

2、了表达式的语法形式及使用方法,让读者对于变量的使用有了更深的了解,4,2.1 Java程序的结构,一、Java程序布局 Java的程序在结构上看,有两个部分: 一个是引入库声明区 引入库声明区的格式如下: import 类库名; 另一部分是类的定义区,5,2.1 Java程序的结构,二、Java源程序的组成 Java源文件主要包含以下三个要素: (1)一个可选择的包声明语句,格式如下: package 语句; (2)任意数量的引入类声明语句,格式如下: import 已有类名; (3)类和接口的声明,只能有一个可见性为public的类,且要求源文件必须和public类名相同,而且大小写都完全一

3、致。,6,2.2 Java程序的一些特殊语句,一、注释语句 注释:是为源程序增加必要的解释说明的内容,其目的是提高程序的可读性,书写注释是编写程序的良好习惯。 Java中有三种形式的注释:/ 注释部分 (单行)/* 注释部分 */ (多行)/* 注释部分 */ (多行),7,一、注释语句 段落注释: /* this is a comment */或 /* that continues * across lines */,2.2 Java程序的一些特殊语句,8,一、注释语句 文档注释: /* Class Name: MyClassAuthor:michale MaVersion:1.0Date:

4、apr 16 2010This is the first java applet! */,2.2 Java程序的一些特殊语句,9,一、注释语句 注释文档根据它所注释的内容,分成三类:变量,方法和类。 类的注释一定要出现在类定义的前面; 变量注释要出现在变量定义的前面; 而方法注释则要出现在方法定义的前面。 注释和定义之间在不能有任何东西,2.2 Java程序的一些特殊语句,10,例如: /* A class comment */ public class doctest /* A variable comment */ public int I; /* A method comment */

5、public void f( ) ,2.2 Java程序的一些特殊语句,11,一、注释语句 文档注释除了在标准表格中使用文档方法和类的特定起始标签外,还包括HTML标记。后跟一个定义标签用途的关键字。,2.2 Java程序的一些特殊语句,12,2.2 Java程序的一些特殊语句,Page 13,二、输出语句 使用System.out.print(x)将数值x输出 例如:double x=10000.0/3.0;System.out.print(x); 或 System.out.printf(“%8.2f”,x); System.out.printf(“Hello,%s,Next year,yo

6、ull be %d”,name,age); 也可以使用System.out.println()语句,2.2 Java程序的一些特殊语句,14,15,常量:如果一个存储空间中的数据在程序运行过程中一直都没有发生改变,称这种空间为常量,常量也有常量名,用保留字final来定义。 例如:final double PI = 3.1415926 ;final int MY_DATE = 5 ;其中PI与MY_DATE就是常量 注意:常量只能在定义时赋值变量可以随时赋值,赋值由赋值符( = )实现.,2.3 常量,例如: final int myData1 = 3; /定义常量int myData2 =

7、2; /定义变量myData2 =5;给myDate2赋值为5 可以改变myData2的值,但是不能改变 myDate1的值。,16,类常量:可以在一个类中的多个方法中使用 使用关键字static final public class ConstantsExample2 public static final double M=2.54;public static void main(string args) double width=8.5;double height=11;System.out.println(“paper size in centimeters:” +width*M +”

8、by” +height*M);,2.3 常量,17,一、变量(Variable),变量:一个命名的内存块,用于存储Java程序中的信息。每个内存块只能存储一种类型的数据。 变量的类型和变量名 变量名以Unicode字母(国际字符集标准,包括_和$)开头 接下来是任意数量的Unicode字母和数字 类名以大写字母开头,2.4 变量和数据类型,例子:合法的变量定义String Name;int CardID;String PassWord;int Money;,18,一、变量(Variable),Java的变量命名要遵从如下的三条规则: 必须由Unicode字符集中的字符组成 不能与Java语言的

9、关键字相同,或命名成布尔值(true或false) 在同一个作用范围内,不能有相同名字的两个变量。 所谓的变量的作用范围是指可以存取变量的代码模块。 变量的作用范围同时也决定了变量何时产生,何时消灭。,2.4.1 变量,19,变量命名:按标识符中的命名规则 变量定义:包括变量名、变量类型和作用域,Type varName =value , varName =value ,变量类型,变量名,变量值,例如: int x,y; double a=3.2,b=7.1;,变量的定义分为两步: 1.变量声明(declaration) 如:int x; 2.变量赋值(Assignment)如:x=10; 合

10、并这两步即为声明变量同时进行初始化,如: int x=10;,二、变量的命名与定义,2.4.1 变量,20,声明同时初始化:让一个变量在生成的时候具有一个指定的常量。 声明后赋值:在变量生成后,利用赋值语句把数据从内存中的一个位置复制另一个位置。,int x=10;,x,10,int x; x=10;,x,10,10,注意:必须要先声明,再使用。,二、变量的命名与定义,2.4.1 变量,21,变量的作用域:指可访问变量的一段代码。 变量作用域的划分: (参考教材P156-157) 局部变量(Local Variable):是定义在方法或方法里的程序块中的变量,使用前一定要初始化。又可称为: 自

11、动变量(Automatic Variable) 临时变量(Temporary Variable) 栈变量(Stack Variable),演示LocalVariableTest.java,二、变量的命名与定义,2.4.1 变量,22,变量作用域的例子1, int i ; /对这个作用域而言,i是局部变量 /这里不可以访问i,i在这里不存在 ,23,变量作用域的例子2,在某个局部作用域内定义的变量不能在其嵌套的局部作用域中重新定义。 int i = 2;int j =4;int i = 6; /出错,i已被定义j = 8; ,24,变量作用域的划分:(参考教材P156-157) 全局变量(Glo

12、bal Variable):又可分为 实例变量(Instance Variable)或非静态成员域:是定义在类中的变量,所有对象建立副本。使用前不需要初始化。 类变量(Class Variable)或静态成员域:要用static关键字修饰,所有对象共用一个,不创建对象也存在。,二、变量的命名与定义,2.4.1 变量,25,类Sphere的定义,public class Sphere /class variable static double PI=3.14; /instance variable double xCenter; double yCenter; double zCenter; d

13、ouble radius; ,3.14,Sphere.PI由所有对象共享,globe xCenter yCenter zCenter radius,ball xCenter yCenter zCenter radius,演示InstanceVariableTest.java,26,数据类型,基本数据类型,引用数据类型,数值型,字符型:char,布尔型:boolean,整型:byte,short,int,long,实型:float,double,类:class,数组和字符串,接口:interface,2.4.2 数据类型,27,一、基本数据类型,基本数据类型:也称作简单数据类型。Java语言有8

14、种简单数据类型,分别是: boolean 布尔型 byte 字节型 short 短整型 int 整型 long 长整型 float 单精度 double 双精度 char 字符型,2.4.2 数据类型,28,基本数据类型习惯上可分为4大类型: 整数类型:byte、short、int、long 浮点类型:float、double 字符类型:char 逻辑类型:boolean Java的基本数据类型长度是固定的,可以跨平台自由移植。(c语言的基本数据类型根据平台的不同会有所参别),一、基本数据类型,2.4.2 数据类型,29,二、整型数据类型(字面值及变量),整型数据类型:不含小数点的数字为整数类

15、型。例如:-124、948、0等。 有以下4种:,2.4.2 数据类型,30,二、整型数据类型(字面值及变量),2.4.2 数据类型,31,整型字面值:整型数据可以表示10进制、8进制、16进制。10进制:123, -234;8进制: 0123,-0234;16进制:0x64, -0xff; 思考:在书写表达上它们有什么区别?整型默认为int型,若是长整形需要在数据后加上字母L。例如:123为int型,而123L则是long型,二、整型数据类型(字面值及变量),2.4.2 数据类型,32,整型变量: 例: int x=123; long y=123L; long z=123l; byte lu

16、ckyNumber=7; short smallNumber=1234;,注意: 必须确保变量的初始值在相应数据类型的取值范围之内,否则编译器就会报错。 Java中没有无符号型整数。,二、整型数据类型(字面值及变量),2.4.2 数据类型,33,三、浮点数据类型(字面值及变量),浮点数据类型:含小数点的数字为浮点类型。例如:-38.32、34.0等。有以下2种:,2.4.2 数据类型,34,浮点型字面值: 实型数据用10进制形式表示,带有小数部分。如1.23,-3.45,1.0 用科学计数法形式表示。如1.23456E+3、12345E-4,其中e或E之前必须有数字,且e或E后面的指数必须为整

17、数。 实型默认为double型,数字后加f或F为float型,加d或D为double型。,三、浮点数据类型(字面值及变量),2.4.2 数据类型,35,浮点型变量: 例: double sunDistance=1.496E8; float electronMass=9E-28F; double x=0.123; float y=0.123F,z=0.123f;,三、浮点数据类型(字面值及变量),2.4.2 数据类型,36,动动脑筋,public class FloatTest public static void main ( String args )float f;f = 1.3 ;Sys

18、tem.out.println( f ); ,演示FloatTest.java,37,四、字符数据类型(字面值及变量),字符型字面值: 用单引号作为定界符。 如: x , X , a , A 字符型变量: 用于存储一个字符,在内存中占2个字节。 存储为Unicode码形式 如: char myChar=A,2.4.2 数据类型,38,字符集: ASCII(American Standard Code for Information Interchange)字符集:使用7位代码表示大小写字母、数字09以及若干控制字符,如换行符。 ISO-8859-1 Latin-1字符集:在西欧,用户希望字符集

19、能够表示他们本国字符集的所有字符,ASCII字符集因而被扩展到8位,即增加了128个字符,用于表示英文中不存在的各种西欧语言的字符。,四、字符数据类型(字面值及变量),2.4.2 数据类型,39,字符集: Unicode字符集:是ISO标准16位字符集,支持65536个不同的字符。其中大约有21000个字符专门用于中文、日文和韩文的表意文字。 ASCII、ISO Latin-1都是Unicode的子集。 Java内部使用2个字节表示每个字符,采用Unicode编码。,演示CharTest.java,四、字符数据类型,2.4.2 数据类型,40,转义字符: 转义符号以“”开头,后跟一个或几个字符

20、或符号来显示一些打印语句不能显示的符号或效果。 例如: “、 、 等等。 n :表示回车换行; t :表示制表(即Tab键); f :表示换页; b :表示退格; r :表示回车; ddd : 3位八进制数所代表的字符; uxxxx : 4位十六进制数所代表的字符。,2.4.2 数据类型,41,五、字符串常量,字符串常量是用一对双引号括起来的一系列字符。 如”It is a nice day!”和”Java” ; 注意,c不等于“c”。,2.4.2 数据类型,42,六、布尔数据类型(字面值及变量),布尔型字面值: 只有两个值:true false 布尔型变量: 例如:boolean state

21、=true; 或boolean state;state=true;,演示BooleanTest.java,2.4.2 数据类型,43,各基本数据类型默认缺省值,byte ( byte )0 short ( short )0 int 0 long 0l float 0.0f double 0.0d char u0000(空字符) boolean false,2.4.2 数据类型,44,七、有固定序列整型值的变量(枚举),定义枚举型定义结尾不加分号,因为是定义类型 枚举型名字用大写字母开头,枚举值的名字一般用小写字母开头。 例: enum Day Monday,Tuesday,Wednesday

22、Day weekday=Day.Tuesday;,演示EnumTest.java,2.4.2 数据类型,45,八、引用类型,引用类型是一种针对对象的数据类型。 在Java中,“引用”指向一个对象在内存中的位置,实质上是一种带有很强的完整性和安全性的限制的指针。 当声明某个类、接口或数组类型的一个变量时,这个变量的值总是某个对象的引用或是null引用。 指针就是简单的地址,而引用除了表示地址外,还可以提供对象其他信息。 指针可以有+,-运算,引用不可以运算。,2.4.2 数据类型,46,例: public class Teacherprivate String name;private int

23、age;private double salary; public static void mian(String args) Teacher myTeacher=new Teacher(“Smith”,30,10000); ,代表类型,对象的引用,代表一个对象,演示Teacher.java,八、引用类型,2.4.2 数据类型,47,总结:,变量有两种类型: 简单类型变量:保存在堆栈中 对象变量:保存在堆中,需要用new来分配空间,字节,2.4.2 数据类型,48,简单变量,进程堆栈,一个进程有一个堆栈,独享 堆栈大小有限制,2.4.2 数据类型,49,对象内容不放在堆栈stack中,放在堆h

24、eap中 对象引用放在堆栈中,对象变量,堆栈,进程,堆对象,对象,2.4.2 数据类型,50,练习:,定义一 常量 PI并赋值为3.14 定义一字符串类型的常量 NAME并赋值为qrsoft 定义一整型常量并赋值为100 定义一字符常量并赋值为a,2.4.2 数据类型,51,九、数据类型转换,自动类型转换 两种类型兼容; 目标类型大于源类型; 强制类型转换 两种类型不兼容 目标类型小于源类型,强制类型转换的通用格式如下: 目标类型 变量=(目标类型)值; 例如: int i = 3; byte b = ( byte )i; 赋值语句中的自动类型转换,2.4.2 数据类型,52,开动脑筋:编译结

25、果是什么?,public class ByteTest public static void main ( String args )byte b;b = 3 ;b = b * 3;System.out.println( b ); ,53,开动脑筋:编译结果是什么?,public class ByteTest public static void main ( String args )byte b;b = 3 ;b = (byte) (b * 3);System.out.println( b ); ,54,一、标识符,标识符的引入:程序开发人员需要对程序中的变量、方法等元素加以命名,以确保它

26、们的唯一性,这时用到标识符。 什么是标识符:变量、方法、类和对象的名称都是标识符,2.5 Java标识符和关键字,标识符的组成:以字母、下划线或美元符号开始的字符序列,后跟字母、数字、下划线或美元符号。,55,使用标识符的注意事项,标识符区分大小写。 不用使用Java关键字来命名。 标志符不能以数字开头,标志符中间也不能包括空格或制表符; 没有长度限制,但不建议使用太长的标识符。 可以使用中文作为标识符,练习:找出合法的标识符 2teacher studentName Student_Name room# abstract _my_value $address 3a int my date e

27、mail,演示IdentifierSample1.java,2.5 Java标识符和关键字,56,二、关键字(保留字),2.5 Java标识符和关键字,57,请判断下列标识符哪些合法哪些不合法? 123, abs , $123,myname, my name, MYname, #myname, _myname, My_name,2.5 Java标识符和关键字,58,三、J2EE命名规范,类名和接口名:各单词首字母大写,其余字母小写。如SamDoc ,HelloWorldApp 方法名和变量名:一般首字母小写,后面每个单词的第一个字母大字。如delStudent 包名:字母全部小写。如,com.

28、abc.dollapp。 常量名:采用大写形式,单词之间以下划线“_”隔开。如DEFAULT_COLOR_DOL。,2.5 Java标识符和关键字,59,2.6 运算符和表达式,运算符,也称为操作符,用于对数据进行计算和处理,或改变特定对象的值。 运算符按其操作数的个数来分,可分为一元运算符、二元运算符和三元运算符。 表达式是运算符、常量和变量的组合。 Java的表达式既可以单独组成语句,又可以出现于循环条件测试、变量说明、方法的调用参数等场合。,60,2.6 运算符和表达式,61,ArithmaticTest1.java,注意:i+(i-)与+i(-i)是有区别的,一、算术运算符和算术表达式

29、,2.6 运算符和表达式,62,ArithmaticTest2.java,一、算术运算符和算术表达式,DoesHuan.java,2.6 运算符和表达式,63,二、赋值运算符和赋值表达式,OperatorSample.java,2.6 运算符和表达式,64,三、关系运算符和关系表达式,2.6 运算符和表达式,65,四、逻辑运算符和逻辑表达式,RelationAndConditionTest.java,2.6 运算符和表达式,66,五、条件运算符和条件表达式,OperatorSample2.java,条件运算符是三元运算符,用”?”和”:”表示。三元条件表达式的一般形式为:expression1

30、?expression2:expression3 例如:a=30;b=a16?160:180;,If (a16)b=160;else b=180;,2.6 运算符和表达式,67,六、位运算符和移位运算符,运算符可将两个值相互交换,而不用把其中的任何一个值移动到其他地方。,2.6 运算符和表达式,68,六、位运算符和移位运算符,LogicOperator.java,2.6 运算符和表达式,69,六、位运算符和移位运算符,练习 假设,a=00000001b,若执行a1,a=?;执行a3,a=?。 假设:int a=-1;a24=?;,2.6 运算符和表达式,70,七、运算符优先级,2.6 运算符和

31、表达式,71,七、运算符优先级,OperatorSample3.java,2.6 运算符和表达式,72,本章小结,本章是Java语言的基础章节,主要概括描述了: Java程序的基本结构 Java语言的常量和变量 Java的基本数据类型 Java语言中的运算符和表达式,73,本章小结,Java中的数据类型有简单数据类型和引用数据类型 简单数据类型: 整数类型 浮点类型 字符类型 布尔逻辑类型引用数据类型:类、接口和数组。,74,本章小结,Java中的运算符分为算术运算符、逻辑运算符、位运算符、关系运算符、赋值运算符和条件运算符。表达式是由运算符和操作数组成的符号序列,对一个表达式进行运算时,要按运算符的优先顺序从高向低进行,同级的运算符则按从左到右的方向进行。,75,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 教学课件 > 大学教育

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1