《java基础语法》PPT课件.ppt

上传人:za****8 文档编号:12668819 上传时间:2020-05-13 格式:PPT 页数:56 大小:1.43MB
返回 下载 相关 举报
《java基础语法》PPT课件.ppt_第1页
第1页 / 共56页
《java基础语法》PPT课件.ppt_第2页
第2页 / 共56页
《java基础语法》PPT课件.ppt_第3页
第3页 / 共56页
点击查看更多>>
资源描述
第三章,Java基础语法,2,本章目标,1注释、分隔符、标识符和关键字2数据类型3方法、变量4值传递和关键字this5标准输入输出6编码惯例,3,注释,注释(Comment)是对源程序起解释说明作用的文本信息,适当使用注释能够增强代码的可读性。Java语言中定义了三种注释形式:/单行注释-注释到行尾/*单行或多行注释*/*可用于文档化处理的单行或多行注释*/JDK中提供了一个文档自动生成工具javadoc,在自定义类中public的成员前以/*/形式加入的注释内容均可被自动提取到生成的说明文档中。,4,分隔符,Java分隔符组成:分号-;逗号-,空格-圆点-.花括号-及Java分隔符作用:Java语句必须以分号作为结束标记,for循环语句中使用分号来分隔不同的成份。逗号可以在方法声明或调用时的参数列表中用于分隔多个参数,也可在一条声明语句中同时声明多个属性或局部变量时起分隔作用。Java程序源代码中各组成部分之间可以插入任意数量的空格,包括换行。圆点用于访问对象成员(属性或方法)时标明调用或隶属关系,其格式为对象名.对象成员。花括号用于构造语句块,5,语句块,Java允许用花括号将一组语句括起来,形成一个语句块(block)用法:定义类时类体必须采用语句块形式。定义方法时方法体必须采用语句块的形式。定义循环语句时,循环体可以采用语句块的形式,采用将0多条语句集合到一起,作为一个整体进行处理。语句块可以嵌套,嵌套层数无限制。,6,标识符,Java语言中,为各种变量、方法和类等起的名字称为标识符(identifier)。Java标识符的命名规则:应以字母、下划线(_)、美元符($)开头后跟字母、下划线、美元符或数字Java标识符大小写敏感,长度无限制举例:,7,关键字,Java语言中一些被赋以特定的含义、并用做专门用途的单词称为关键字(keyword)。所有Java关键字都是小写的,TURE、FALSE、NULL等都不是Java关键字。goto和const虽然从未使用,但也作被为Java关键字保留。true,false虽被用做专门用途,但不是Java关键字。,8,Java关键字表,9,练习,1.练习在一个已有.java源代码文件中使用三种不同类型的注释,并用javadoc命令创建自己的类文档,体会其用法。2.练习在已有应用程序的一个语句中插入多处空格、中间换行、将多个语句组成一个语句块儿(置于“”中),并编译运行程序,体会其自由程度。3.测试并体会Java标识符、关键字的使用规则:在程序中试将不合法的标识符(如:3ar,*bily,d9#8等)、或关键字作为变量名、方法名或类名,编译然后改正错误。,10,数据类型,数据类型就是一组性质相同的值的集合以及定义于这个值集合上的一组操作的总称。常用数据类型:整型、浮点型、字符型、字符串型、布尔型按照对数据类型的使用约束程度来划分,高级编程语言可分为:强类型语言(StrongTypedLanguages)弱类型语言(WeaklyTypedLanguages),11,Java数据类型,12,基本数据类型,基本类型(PrimitiveType)的数据只能保存单一的值,因此也被称为原始类型、或简单类型。Java中定义了四类/八种基本数据类型逻辑型-boolean文本型-char整数型-byte,short,int,long浮点型-float,double,13,整型,整型数据用于保存整数信息,Java提供了四种不同的整数类型,各有固定的表数范围和字段长度,而不受具体操作系统的影响,以保证Java程序的可移植性,14,整型常量表示,Java语言整型常量的三种表示形式:十进制整数,如12,-314,0八进制整数,要求以0开头,如012十六进制数,要求0 x或0X开头,如0 x12Java语言的整型常量默认为int型,声明long型常量可以后加l或L。举例:,inta=39;intb=0 x4b;intc=021;intd=a+0 x12+012;/等价于d=39+18+10;longm=3L;longn=m+40;,15,浮点型,Java浮点型包括float和double两种,分别用于保存单精度和双精度的浮点数。浮点型有固定的表数范围和字段长度:,16,浮点型常量表示,Java浮点类型常量有两种表示形式十进制必须含有小数点,也可采用科学计数法表示,例如3.650.12.124.236e21.24e24.5E-3十六进制从JDK5.0开始引入,十六进制浮点数只能采用科学记数法表示,其格式为:例如0 x1.2p3,转换为十进制的计算方法为:0 x1.2p3=(1*160+2*16-1)*23=9.0Java浮点型常量默认为double型,如要声明float型常量为,则需在数字后面加f或F,如:doubled=3.14;floatf=3.14f;,17,字符型,基本概念:字节、字符、字符集、字符编码。char型数据用来表示通常意义上“字符”,Java语言采用16位Unicode编码保存。字符常量的三种表示方法:使用单引号括起来的单个字符,例如:charc=A;十六进制编码形式表示,例如:charc1=u0061;使用转义字符来将其后的字符转变为其它的含义,例如:charc2=n;/代表换行符,18,布尔型,boolean类型数据用来表示只有两种状态的逻辑值,分别代表现实生活中的特定条件成立与否,通常用于逻辑运算和程序流程控制。boolean类型数据只允许取值true或false,不可以0或非0的整数替代true和false。用法举例:,booleanb=true;if(b=false)System.out.println(haha);elseSystem.out.println(hehe);,19,练习,1.编写Java应用程序,测试并体会各种原始类型数据的定义,赋值和输出。输出可采用下述形式的语句:System.out.println(x=+x);/其中x是变量名,如a,b,c等。2.使用char型的三种常量声明方式为char型变量赋值并输出。,20,引用数据类型,Java语言中除8种基本数据类型以外,其它的数据类型统称为引用类型(ReferenceType),具体包括:类、接口、数组、枚举和注解类型。引用类型数据以对象的形式存在。引用类型变量的值是某个对象的句柄,而不是对象本身。声明引用类型变量时,系统只为该变量分配引用空间,并未创建一个具体的对象。,21,引用类型应用举例(1),publicclassQQFarmprivateintaccount=3715500;privateintlevel=28;privateintexperience=5000;publicQQFarm()publicQQFarm(inta,intl,inte)account=a;level=l;experience=e;publicvoidsetAccount(inta)account=a;publicintgetAccount()returnaccount;publicvoidsetLevel(intl)level=l;publicintgetLevel()returnlevel;publicvoidsetExperience(inte)experience=e;publicintgetExperience()returnexperience;publicvoiddisplay()System.out.println(account+-+level+-+experience);,22,引用类型应用举例(2),publicclassTestReferenceTypepublicstaticvoidmain(Stringargs)QQFarmqqf;qqf=newQQFarm(3715500,20,5000);qqf.display();,23,对象构造和初始化(1),一.为引用类型变量分配引用空间语句:QQFarmqqf;内存状态:见书3-15二.创建新对象为新对象分配内存空间,并进行属性(实例变量)的默认初始化。语句:qqf=newQQFarm(3715500,20,5000);内存状态:,24,对象构造和初始化(2),Java对象默认初始化规则,25,对象构造和初始化(3),三.进行属性的显式初始化,显式初始化取值来自于类的定义中属性声明部分。语句:privateintaccount=3715500;privateintlevel=28;privateintexperience=5000;内存状态:见书3-15说明:如果属性在声明时未指定缺省值,则在这个环节就不对其进行赋值操作。,26,对象构造和初始化(4),四.执行构造方法体中的语句。语句:publicQQFarm(inta,intl,inte)account=a;level=l;experiecne=e;内存状态:见书3-16说明:此时新建对象和先前声明的变量qqf间还是没有建立任何关联。,27,对象构造和初始化(5),五.为引用类型变量赋值。语句:qqf=newQQFarm(3715500,20,5000);内存状态:见书3-17说明:此时变量qqf保存的并不是新建对象封装的具体信息、如属性值等,而是该对象的句柄(Handle)。,28,练习,基本数据类型和引用数据类型的区别?引用类型变量和对象的区别?类和对象的关系?,29,方法,方法(Method)是类的动态性能,描述了该类事物所共有的功能或行为。Java语言的方法相当于其它编程语言中的函数(Function)或子程序(Subroutine),是用来完成相对独立功能的一段代码的集合。语法规则:Java语言的方法必须定义在类中,而不允许直接出现在源文件内。只有其所在类的对象才有资格调用方法。方法的定义不允许出现嵌套。,30,方法举例,publicclassTestMethodpublicintm1(inta,intb,intc)intresult=a+b+c;returnresult;publicvoidm2(intc)System.out.println(c);publicstaticvoidmain(Stringargs)TestMethodtm=newTestMethod();intj=tm.m1(3,4,5);System.out.println(j);System.out.println(tm.m1(100,10,9);tm.m1(1,2,3);/合法,丢弃了返回结果tm.m2(6);/intk=tm.m2(8);/非法,方法m2()无返回值,31,相关语法,方法形参列表格式:(数据类型1参数名1,数据类型2参数名2,)Java语言中使用下述形式调用方法:对象名.方法名(实参列表)实参列表格式如下:(参数1,参数2,)实参可以是变量、常量或表达式,但其数目、类型和出现的顺序必须和相应的形参保持一致,此称为参数匹配。return语句用于终止方法的运行并指定要返回的数据。如果方法的最后一行没有return语句,则编译时系统会添加return;。,32,变量,变量(Variable)用于记录数值可以改变的数据。计算机技术中变量包括变量名和变量值两部分:变量名用于标记一段特定的存储空间变量值以二进制形式保存在该空间中,且可以被访问和修改。变量分类按所属数据类型划分:基本类型变量引用类型变量按声明的位置划分:局部变量方法或语句块内部定义的变量成员变量方法外部、类的内部定义的变量,33,变量声明和初始化,Java语言中变量必须先声明和初始化(赋初值),然后才可以使用。成员变量在类的定义中声明,在创建对象的同时创建有关的成员变量,然后由系统自动对其进行默认初始化和显式初始化。局部变量声明语法格式:=,=;举例:说明:形参属局部变量,方法调用时会被隐含的初始化。,publicvoidm1(inta,intb)inti;intj=i+4;/编译出错,变量i尚未初始化intk=a+b;,34,变量作用域与生存期,变量的作用域也称变量的作用范围,即一个变量在多大的范围内可以使用:成员变量的作用域与其所属对象的作用域相同局部变量的作用域就是它所在的方法或语句块。变量的生存期即变量的生存时间:局部变量的生存期就是其所在方法或语句块单次执行的期间在程序每一次调用方法或运行进入到一个语句块中时,其中的局部变量才被创建并可用,随方法/语句块的退出,局部变量将被销毁。成员变量的生存期与其所属的对象相同,随着对象的创建而创建、随对象的销毁而销毁。,35,数据存储细节,计算机的物理内存在操作系统和JVM中使用时分为堆内存和栈内存两种方式:堆内存(HeapMemory)由所有的应用程序公用,存储空间分配不连续,存储容量大。在堆内存中分配存储空间和进行存取操作速度较慢。栈内存(StackMemory)由特定应用程序专用,存储空间是连续的,以栈的方式(后进先出)进行管理,存储容量小,但访问速度快。Java程序运行时,局部变量保存在栈内存中,而对象及其成员变量保存在堆内存中。,36,变量作用域举例,classCprivateinta=1;privateintb=5;publicvoidm1()inti=4,j=5;a=i+j;publicvoidm2(inti)intj=8;a=i+j;System.out.println(a);publicclassTestVariablepublicstaticvoidmain(Stringargs)Cc=newC();c.m1();intk=4;c.m2(k);,37,值传递,Java语言中进行赋值操作或函数调用中传递参数时,遵循值传递(PassByValue)的原则,即传递的永远是参数的值。Java值传递分为两种不同情形:基本类型数据传递的是该数据的值本身。引用类型数据传递的是对对象的引用(句柄),而非对象本身。,38,值传递举例(1),39,值传递举例(2),40,值传递演示(1),41,值传递演示(2),42,值传递演示(3),43,值传递演示(4),44,值传递演示(5),45,值传递演示(6),46,值传递演示(7),47,值传递演示(8),48,值传递演示(9),49,值传递演示(10),50,值传递演示(11),51,练习,1.练习值传递演示中的例程,Example.java,体会和巩固Java中值传递的思想。,52,关键字this(1),Java中为解决变量的命名冲突和不确定性问题,引入关键字this代表其所在方法的当前对象,具体可分为两种情况:在普通方法中,关键字this代表方法的调用者、即本次调用了该方法的对象;在构造方法中,关键字this代表了该方法本次运行所创建的那个新对象。在Java方法中既可以直接使用本方法的局部变量,还可以使用方法当前对象的成员变量。,53,关键字this(2),publicclassQQFarmprivateintaccount;privateintlevel;privateintexperience;publicQQFarm()publicQQFarm(inta,intl,inte)this.account=a;this.level=l;this.experience=e;publicvoidsetAccount(inta)this.account=a;publicvoidsetLevel(intl)this.level=l;publicvoidsetExperience(inte)this.experience=e;publicvoidsetting()this.setAccount(3715500);this.setLevel(28);setExperience(5000);/同this.setExperience(5000);publicvoiddisplay()System.out.println(account+-+level+-+experience);,54,标准输入/输出(1),读取控制台输入,importjava.util.Scanner;publicclassTestInputpublicstaticvoidmain(Stringargs)Scanners=newScanner(System.in);System.out.println(请输入你的姓名:);Stringname=s.nextLine();System.out.println(请输入年龄:);intage=s.nextInt();System.out.println(请输入你的工资数额:);doublesalary=s.nextDouble();System.out.println(您的个人信息:n姓名:+name+t年龄:+age+岁t工资:+salary+元);,55,标准输入/输出(2),控制台输出的三种方式System.out.pirntln()输出单个数据到控制台上并换行。System.out.print()输出单个数据但不换行。System.out.printf()提供增强的格式化输出数据的功能。printf()方法语法格式System.out.printf(,);printf()应用举例doublesalary=5000.0/3;System.out.printf(%10.2f,salary);,56,Java编码惯例,命名惯例分隔和缩进使用注释,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!