第2章语法基础优秀PPT.ppt
《第2章语法基础优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第2章语法基础优秀PPT.ppt(110页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2章语法基础现在学习的是第1页,共110页本章主要介绍编写Java程序必须了解的语言基础知识,包括Java程序的结构、数据类型、变量、常量、表达式和流程控制语句等。现在学习的是第2页,共110页import语句与 C语言的 include语句有本质的区别。import语句只指明要用到的类所在的位置,以便能在用到时可以加载;而 C语言用 include语句将要用的文件包含在源文件中,作为源文件编译成一个模块。这体现了Java语言的特点,用户只需要将模块编译一次。当用户在编写另一个 模块用到已经编译的模块时,只要告诉编译程序它的位置,如用全限定名或者用import语句,编译程序无需再一次编译已经
2、编译的模块,就能够将源文件编译 通过。现在学习的是第3页,共110页主类类体Java源程序是由类定义组成的,每个程序中可以定义若干个类,但是只有一个类是主类。在Java Application中,主类是指包含main方法的类;在JavaApplet里,主类是系统类Applet的子类。主类是Java程序执行的入口点。Java程序中定义类使用关键字class,类的定义由类头和类体两部分组成。类体部分用来定义静态属性和方法这两种类的成员,类头部分除了声明类名外,还可以说明类的继承特性。现在学习的是第4页,共110页语句:每一条Java语句都由分号(;)结束。类和方法中的所有语句用一对大括号括起。Ja
3、va程序是由类定义组成的,每个类内部包括类的静态属性和方法两部分,表达式、变量、常量和关键字等是构成Java的语句的基础。其中变量与常量关键字是Java语言语法规定的保留字,用户程序定义的常量和变量的取名不能与保留字相同。现在学习的是第5页,共110页2.2数据类型、变量与常量数据类型、变量与常量2.2.1数据类型表2.1列出了Java中定义的所有数据类型。特点如下:Java的各种数据类型占用固定的内存长度,与具体的软硬件平台环境无关;Java的每种数据类型都对应一个缺省的数值,使得这种数据类型的变量的取值总是确定的。这两点分别体现了Java的跨平台特性和安全稳定性。现在学习的是第6页,共11
4、0页表2.1Java的基本数据类型现在学习的是第7页,共110页boolean:表示布尔型。其变量或常量的取值只有true和false两个。true代表“真”,false代表“假”。byte:处理未经加工的二进制数据,每个byte型的常量或变量中包含8位(bit)的二进制信息。Java的字符类型采用了新的国际标准编码方案Unicode编码。每个Unicode码占用16个比特位,包含的信息量比ASCII码多了一倍。由于采用Unicode编码方案,有利于Java程序在基于不同语言的平台间的移植。现在学习的是第8页,共110页除了基本数据类型外,Java中还有引用数据类型(reference),包括
5、类和接口等。例如,对应基本的double类型,还存在着一个类Double。这些类在包含基本数据类型所表示的一定范围、一定格式的数值的同时,还包含了一些特定的方法,可以实现对数值的专门操作,如把字符串转换成双精度型数值等。两种数据类型:两种数据类型:基本数据类型和引用数据类型基本数据类型和引用数据类型现在学习的是第9页,共110页注意:注意:(1)true、false和null为小写,而不是象在C+语言中那样为大写。严格地讲,它们不是关键字,而是文字。(2)无sizeof运算符,因为所有数据类型的长度和表示是固定的,与平台无关,不是象在C语言中那样数据类型的长度根据不同的平台而变化。这正是Jav
6、a语言的一大特点。(3)goto和const不是Java编程语言中使用的关键字。现在学习的是第10页,共110页2.2.2标识符标识符标识符:用来标识变量、常量、方法、对象和类等的存在,标识符可以由编程者自由指定,但Java对于标识符的定义有如下的规定:(1)标识符由字母、数字、下划线(-)、美元符号($)组成。(2)标识符必须以字母、下划线或美元符号开头。(3)对大小写敏感,class和Class,System和system分别代表不同的标识符。(4)应该使标识符能一定程度上反映它所表示的变量、常量、对象或类的意义。(5)标识符区分大小写,没有长度限制,可以为标识符取任意长度的名字。现在学习
7、的是第11页,共110页现在学习的是第12页,共110页2.2.3常量常量:在程序运行过程中不发生变化的量。Java中常用的常量有布尔型、整型、字符、字符串和浮点。1.布尔常量布尔常量包括true和false,分别代表真和假。2.整型常量整型常量:用来给整型变量赋值。整型常量按照所占用的内存长度,可分为一般整型常量和长整型常量,一般整型常量占用32位,长整型常量占用64位。长整型常量的尾部有一个大写的L或小写的l,如-386L,017777l。现在学习的是第13页,共110页2.浮点常量浮点常量表示的是可以含有小数部分的数值常量。根据占用内存长度的不同,可以分为一般浮点常量和双精度浮点常量两种
8、。一般浮点常量占用32位内存,用F、f表示,如19.4F,2.0513E3;双精度浮点常量占64位内存,用带D或d或不加后缀的数值表示,如2.433E-5D,700041.273d,2.1415。浮点常量有一般表示法和指数表示法两种。现在学习的是第14页,共110页4.字符常量:字符常量用一对单引号括起的单个字符表示,如a。转义符是有特殊含义的字符,如回车、换行等。所有的转义符都用反斜线()开头,后面跟着一个字符来表示某个特定的转义符,详见下表。现在学习的是第15页,共110页5.字符串常量:用双引号括起的一串若干个字符(可以是0个)。字符串中可以包括转义符,标志字符串开始和结束的双引号必须在
9、源代码的同一行上。在Java中可以使用连接操作符(+)把两个或更多的字符串常量串接在一起,组成一个更长的字符串。例如,Howdoyoudo?+n的结果是Howdoyoudo?n。现在学习的是第16页,共110页2.2.4变量变量:在程序的运行过程中数值可变,通常用来记录运算中间结果或保存数据。变量必须先声明后使用,声明变量包括指明变量的数据类型和变量的名称,必要时还可以指定变量的初始数值。如:booleanm_bFlag=true;声明一个布尔类型的简单变量,名字为m_bFlag,该变量的初值是逻辑真。现在学习的是第17页,共110页下面是其他几个变量声明的例子:charmyCharacter
10、=B;longMyLong=-375;intm_iCount=65536;doublem_dScroe;现在学习的是第18页,共110页声明变量又叫创建变量,执行变量声明语句时系统根据变量的数据类型在内存中开辟相应的空间并登记变量名称、初始值等。Java的变量有其生存期和有效范围,Java用大括号将若干语句组成语句块,变量的有效范围就是声明它的语句所在的语句块。现在学习的是第19页,共110页例2-1UseVariable.javapublicclassUseVariablepublicstaticvoidmain(Stringargs)booleanb=true;shortsi=128;in
11、ti=-99;longl=123456789L;charch=J;floatf=2.1415925F;doubled=-1.04E-5;Strings=Hello!;System.out.println(布尔型变量b=+b);System.out.println(短整型变量si=+si);System.out.println(整型变量i=+i);System.out.println(长整型变量l=+l);System.out.println(字符型变量ch=+ch);System.out.println(浮点型变量f=+f);System.out.println(双精度型变量d=+d);Sys
12、tem.out.println(字符型对象s=+s);现在学习的是第20页,共110页例2-1的运行结果如下:现在学习的是第21页,共110页上例子中定义了若干个变量并用相应类型的常量为它们赋初始值。String不是基本数据类型,而是一个系统定义的类名,每一个字符串变量实际上都是一个字符串对象。但是由于字符串是十分常用的对象。现在学习的是第22页,共110页例2-2getNumber.javaimportjava.io.*;publicclassgetNumberpublicstaticvoidmain(Stringargs)inti=0;Strings;trySystem.out.print
13、(请输入一个整数:);BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in);s=br.readLine();i=Integer.parseInt(s);catch(IOExceptione)System.out.print(输入的数据是:+i+.);运行结果如下:现在学习的是第23页,共110页上例从键盘输入一个字符串,然后把它转化成整型数据并输出。上例利用系统定义的方法Integer.parseInt()可以把把字符串转化成值。其中Integer是系统定义的一个类,对应基本数据类型int,parseInt()是I
14、nteger类的一个方法,可以把数字字符组成的字符串转化成整型数据。另一个方法是:Integer.valueOf(Strings).intValue();方 法 System.out.print()的 用 法 和 作 用 与 System.out.println()基本相同,其区别是输出了数据后并不回车。现在学习的是第24页,共110页例2-3getDouble.javaimportjava.applet.*;importjava.awt.*;importjava.awt.event.*;publicclassgetDoubleextendsAppletimplementsActionList
15、enerLabelprompt;TextFieldinput;doubled=0.0;publicvoidinit()prompt=newLabel(输入一个浮点数:);input=newTextField(10);add(prompt);add(input);input.addActionListener(this);publicvoidpaint(Graphicsg)g.drawString(输入的数据是:+d,10,50);publicvoidactionPerformed(ActionEvente)d=Double.valueOf(input.getText().doubleValue
16、();/或者d=Double.ParseDouble(input.getText();repaint();现在学习的是第25页,共110页运行结果如下运行结果如下:现在学习的是第26页,共110页上例是图形界面下的JavaApplet程序。用户在文本框对象input中输入字符串并回车后,程序接受用户的输入.利用Double.valueOf().doubleValue()将这个字符串转化为浮点数据并赋值给双精度变量d。actionPerformed()方法中的方法repaint()是系统已定义好的一个方法,这个方法将强行调用paint(),把变量d中的数据显示出来。现在学习的是第27页,共110
17、页2.3表达式表达式表达式:由变量、常量、对象、方法调用和操作符组成的式子。组成表达式的Java操作符有很多种,包括赋值运算、算术运算、关系运算和逻辑运算等。现在学习的是第28页,共110页2.2.1赋值与强制类型转换赋值运算符:给程序里的变量或对象赋值。简单的赋值运算是把一个表达式的值直接赋给一个变量或对象,格式如下:变量或对象=表达式;其中赋值号右边的表达式可以是常量、另一个变量或对象以及方法的返回值。赋值运算的例子如下:i=0;j=i;k=i+j*5;MyFirstString=MyDouble.toString();MySecondString=MyFirstString;现在学习的是
18、第29页,共110页注意:当赋值号的左边是一个对象名时,赋值运算符把右边表达式所得的对对象象的的引引用用赋值给它,而不是为这个对象开辟新的内存空间并把右边对象的所有内容赋值给它。在使用赋值运算时,有时会出现等号左边的数据类型和等号右边的数据类型不一致的情况,这时需要把等号右边的数据类型转化成等号左边的数据类型。某些情况下,系统可以自动完成这种类型转换,另一些情况下就要用到强制类型转换。现在学习的是第30页,共110页Java类型转换的规定:凡是将变量从占用内存较少的短数据类型转化成占用内存较多的长数据类型时,可以不做显式的类型转换声明;但将变量从较长的数据类型转换成较短的数据类型时,必须做强制
19、类型转换。下面的例子分别定义了16位的字节类型变量MyByte和32位的整数类型变量MyInteger:byteMyByte=10;intMyInteger=-1;现在学习的是第31页,共110页byteMyByte=10;intMyInteger=-1;若把MyByte的值赋给MyInteger,则可直接写成:MyInteger=MyByte;如果把MyInteger的值赋给MyByte,则必须写成:MyByte=(byte)MyInteger;先把变量MyInteger中保存的数值的数据类型从int变成byte后才能赋给MyByte,其中,(byte)就是在做强制类型转换。现在学习的是第3
20、2页,共110页强制类型转换的一般格式是:(数据类型)变量名或表达式现在学习的是第33页,共110页2.2.2算术运算算术运算算术运算是针对数值类型操作数进行的运算。算术运算符根据需要的操作数个数的不同,可以分为双目运算符和单目运算符两种。现在学习的是第34页,共110页1.双目运算符:双目算术运算符现在学习的是第35页,共110页注意:(1)只有整型(int,long,short)数据可以取余,float和double不能取余。(2)两个整数做除法时,结果是截取商数的整数部分。如果希望保留小数部分,要做强制类型转换。例如1/2的结果是0,而(float)1)/2的结果是0.5。现在学习的是第
21、36页,共110页2.单目运算符单目运算符的操作数只有一个,算术运算中有三个单目运算符。单目算术运算符如下:现在学习的是第37页,共110页单目运算符中的自增和自减,其运算符的位置可以在操作数的前面,也可以在操作数的后面;当进行单目运算的表达式位于一个较复杂的表达式内部时,单目运算符的位置将决定单目运算与复杂表达式二者执行的先后顺序。如下面的例子里,单目运算符在操作数变量的前面,则先执行单目运算,修改变量的值后用这个新值参与复杂表达式的运算。intx=2;inty=(+x)*3;运算执行的结果是x=3,y=9。现在学习的是第38页,共110页在例中,由于单目运算符放在操作数变量的后面,则先计算
22、复杂表达式的值,最后再修改变量的取值。intx=2;inty=(x+)*3;运算执行的结果是x=3,y=6。现在学习的是第39页,共110页例 MyTestArithmetic.javaimportjava.applet.*;importjava.awt.*;importjava.awt.event.*;public class UseArithmetic extends Applet implementsActionListenerLabelprompt;TextFieldinput1,input2;Buttonbtn;inta=0,b=1;publicvoidinit()prompt=ne
23、wLabel(请输入两个整型数据:);input1=newTextField(5);input2=newTextField(5);btn=newButton(计算);add(prompt);add(input1);add(input2);add(btn);btn.addActionListener(this);publicvoidpaint(Graphicsg)g.drawString(a+b+=+(a+b),10,50);g.drawString(a+-+b+=+(a-b),10,70);g.drawString(a+*+b+=+(a*b),10,90);g.drawString(a+/+b
24、+=+(a/b),10,110);g.drawString(a+%+b+=+(a%b),10,130);publicvoidactionPerformed(ActionEvente)a=Integer.parseInt(input1.getText();b=Integer.parseInt(input2.getText();repaint();现在学习的是第40页,共110页上例是图形界面中的JavaApplet程序,它利用两个文本框对象input1和input2接受用户输入的两个数据。当用户单击按钮“计算”时,程序将把这两个字符串转化为整型数据赋值给同类的两个变量a和b,然后通过repain
25、t()方法调用paint()方法,以a和b为操作数,计算它们四则运算的结果并输出。运行结果如下:现在学习的是第41页,共110页2.2.3关系运算关系运算是比较两个数据之间的大小关系的运算,常用的关系运算列于下表中:运算符运算=等于!=不等于大于=大于等于+b+=+(ab),10,50);g.drawString(a+b+=+(a=+b+=+(a=b),10,90);g.drawString(a+=+b+=+(ay&x+=y-;现在学习的是第47页,共110页在计算布尔型的变量b的取值时,先计算&左边的关系表达式xy,得结果为假,根据逻辑与运算的规则,只有参加与运算的两个表达式都为真时,最后的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语法 基础 优秀 PPT
限制150内