第三章.java基础语法课件_第1页
第三章.java基础语法课件_第2页
第三章.java基础语法课件_第3页
第三章.java基础语法课件_第4页
第三章.java基础语法课件_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第三章Java基础语法佃部一盯赁少请袱战压轿五喜馏丈脾迁茅轧诣矛吉涅暂桥腮颖绒袄胚鸦场第三章.java基础语法第三章.java基础语法1本章目标1 注释、分隔符、标识符和关键字2 数据类型3 方法、变量4 值传递和关键字this5 标准输入输出6 编码惯例蹲讹闪贼令划道唉藉蚂叙敢抵柯锦棱付身惯惕拖杀袱集掐纯脆戮据抬种埔第三章.java基础语法第三章.java基础语法2注释注释(Comment)是对源程序起解释说明作用的文本信息,适当使用注释能够增强代码的可读性。Java语言中定义了三种注释形式:/ 单行注释-注释到行尾/* 单行或多行注释*/* 可用于文档化处理的单行或多行注释*/JDK中提供

2、了一个文档自动生成工具javadoc,在自定义类中public的成员前以/*/形式加入的注释内容均可被自动提取到生成的说明文档中。蕾睁舜燕搬簿袱吉憾侠烯怯侠磷洲媳摘乌雌侣渡既拳忱节绣系途捌德胃搪第三章.java基础语法第三章.java基础语法3分隔符Java分隔符组成:分号-; 逗号-, 空格- 圆点-.花括号-及Java分隔符作用:Java语句必须以分号作为结束标记,for循环语句中使用分号来分隔不同的成份。逗号可以在方法声明或调用时的参数列表中用于分隔多个参数,也可在一条声明语句中同时声明多个属性或局部变量时起分隔作用。Java程序源代码中各组成部分之间可以插入任意数量的空格,包括换行。圆

3、点用于访问对象成员(属性或方法)时标明调用或隶属关系,其格式为对象名.对象成员。花括号用于构造语句块芋揩衡嘴紊堵习赞公沽学裤臼倾邯泅铁沛妄草塞致材篷挛崔澳念绵惋郴沁第三章.java基础语法第三章.java基础语法4语句块Java允许用花括号将一组语句括起来,形成一个语句块(block)用法:定义类时类体必须采用语句块形式。定义方法时方法体必须采用语句块的形式。定义循环语句时,循环体可以采用语句块的形式,采用将0多条语句集合到一起,作为一个整体进行处理。语句块可以嵌套,嵌套层数无限制。压曙杀怨辟腕触数枣闺柞岳零骇苟帕考碾豌菇岂惹绍淌扮月标唆究亏责绊第三章.java基础语法第三章.java基础语法

4、5标识符Java语言中,为各种变量、方法和类等起的名字称为标识符(identifier)。Java标识符的命名规则:应以字母、下划线(_)、美元符($)开头后跟字母、下划线、美元符或数字Java标识符大小写敏感,长度无限制举例:迸妙鸟捍涅腑较遂邦蔽疾假容燎季垮央竟掉园娩血普篷勺渊嫌鸟臭阁礼映第三章.java基础语法第三章.java基础语法6关键字Java语言中一些被赋以特定的含义、并用做专门用途的单词称为关键字(keyword)。所有Java 关键字都是小写的, TURE、FALSE、NULL等都不是Java关键字。goto和const 虽然从未使用,但也作被为Java关键字保留。true,f

5、alse虽被用做专门用途,但不是Java关键字。莆挥等诗贼渍匠饱池五拷战恍贩胜洼艳僻骸偷造饿坯聂寻巷朝蟹掐观股馏第三章.java基础语法第三章.java基础语法7Java关键字表德吾牲烯艺胸担文缀啃忽凄呀暮潍治炯纬额贵库仔酱匆跪生兵榷熄蚜卵兼第三章.java基础语法第三章.java基础语法8练习1. 练习在一个已有.java源代码文件中使用三种不同类型的注释,并用javadoc命令创建自己的类文档,体会其用法。2. 练习在已有应用程序的一个语句中插入多处空格、中间换行、将多个语句组成一个语句块儿(置于“”中),并编译运行程序,体会其自由程度。3. 测试并体会Java标识符、关键字的使用规则:在

6、程序中试将不合法的标识符(如:3ar, *bily,d9#8等)、或关键字作为变量名、方法名或类名,编译然后改正错误。强革拐腐惨翟眨杰服濒芒滤试咯尊莉糠闸赘会释孕效婚痛堤蒙褐议躲冬动第三章.java基础语法第三章.java基础语法9数据类型数据类型就是一组性质相同的值的集合以及定义于这个值集合上的一组操作的总称。常用数据类型:整型、浮点型、字符型、字符串型、布尔型按照对数据类型的使用约束程度来划分,高级编程语言可分为:强类型语言(Strong Typed Languages)弱类型语言(Weakly Typed Languages)垂丰尘渗汤埂代少管疥旺均茁刀持旁兼烙于松拼委腹瞒粗乱夏蜡臃题度

7、循第三章.java基础语法第三章.java基础语法10Java数据类型嗅嗣弄梯睁褂返弯盏从础硒礁蔬育寒扣揭屁劲翌球厄诌凝晰冀办蚤苯陇旺第三章.java基础语法第三章.java基础语法11基本数据类型基本类型(Primitive Type)的数据只能保存单一的值,因此也被称为原始类型、或简单类型。Java中定义了四类/八种基本数据类型逻辑型- boolean文本型- char整数型- byte, short, int, long浮点型- float, double狮蹲哟恶雪始栗翁箕饿附穴扔褥抱祁驰辅膛霞痒炊慑浚子疤语土恭至嚷虚第三章.java基础语法第三章.java基础语法12整型整型数据用于保

8、存整数信息,Java提供了四种不同的整数类型,各有固定的表数范围和字段长度,而不受具体操作系统的影响,以保证Java程序的可移植性鸟胳蒜王蛤步汾麦蹲型搏辗域演朗宋蠢涕淖浇蝎埂紊弟泉筏爬糖渣皂要瞄第三章.java基础语法第三章.java基础语法13整型常量表示Java语言整型常量的三种表示形式:十进制整数,如12,-314, 0八进制整数,要求以0开头,如012十六进制数,要求0 x或0X开头,如0 x12 Java语言的整型常量默认为int型,声明long型常量可以后加l或L。举例:int a = 39; int b = 0 x4b; int c = 021;int d = a + 0 x12

9、 + 012; /等价于d=39 + 18 + 10;long m = 3L;long n = m + 40;坟夫葬咀剐竖银盟坛本馆贞燃乙视龄韧斜够网挖啸髓琵锰赤巢庞是冠叙葬第三章.java基础语法第三章.java基础语法14浮点型Java浮点型包括float和double两种,分别用于保存单精度和双精度的浮点数。浮点型有固定的表数范围和字段长度:缠脚唇甘漏擒阳瘩腕贝凌缮栈念鲍呆态足怜映罐庚若涕计寅锈咕祸令吓懒第三章.java基础语法第三章.java基础语法15浮点型常量表示Java浮点类型常量有两种表示形式十进制必须含有小数点,也可采用科学计数法表示,例如3.65 0.12 .12 4.23

10、6e2 1.24e2 4.5E-3十六进制从JDK5.0开始引入,十六进制浮点数只能采用科学记数法表示,其格式为: 例如0 x1.2p3,转换为十进制的计算方法为:0 x1.2p3 = (1*160 + 2*16-1) * 23 = 9.0Java浮点型常量默认为double型,如要声明float型常量为,则需在数字后面加f或F,如:double d = 3.14;float f = 3.14f;邹珍月霖纂蛛呸薛擎能拱场舆裂苔礼跪蚌铸寅只贮褪屋撑攻议愁萨逊增淫第三章.java基础语法第三章.java基础语法16字符型基本概念:字节、字符、字符集、字符编码。char型数据用来表示通常意义上“字符

11、”,Java语言采用16位Unicode编码保存。字符常量的三种表示方法:使用单引号括起来的单个字符,例如:char c = A;十六进制编码形式表示,例如:char c1 = u0061;使用转义字符来将其后的字符转变为其它的含义,例如:char c2 = n; /代表换行符莲凄树池又墅釜皇皂量辛姿伪唬钝宝愧炮萤庄晦都串妊逝姜略胆胆酝颧凉第三章.java基础语法第三章.java基础语法17布尔型boolean类型数据用来表示只有两种状态的逻辑值,分别代表现实生活中的特定条件成立与否,通常用于逻辑运算和程序流程控制。boolean类型数据只允许取值true或false,不可以0或非0的整数替代

12、true和false。用法举例:boolean b = true;if(b = false)System.out.println(haha);elseSystem.out.println(hehe);炮懦妻彭鸦悲夺拒脐胯基球犹庙沸哦各挝侨筑岩翰狞允袒燥酸渍搬吉舵删第三章.java基础语法第三章.java基础语法18练习1. 编写Java应用程序,测试并体会各种原始类型数据的定义,赋值和输出。输出可采用下述形式的语句:System.out.println(x= + x);/其中x是变量名,如a,b,c等。2. 使用char型的三种常量声明方式为char型变量赋值并输出。挽展贼杯雅澡势仅钮歹卿乓毡

13、脉瘩蝎愈洛鞭捻龟凹蔚折狡努孺廷喝肩拉包第三章.java基础语法第三章.java基础语法19引用数据类型Java语言中除8种基本数据类型以外,其它的数据类型统称为引用类型( ReferenceType),具体包括:类、接口、数组、枚举和注解类型。引用类型数据以对象的形式存在。引用类型变量的值是某个对象的句柄,而不是对象本身。声明引用类型变量时,系统只为该变量分配引用空间,并未创建一个具体的对象。祈鱼遮吁偶薯谈武桂其尖卯故沦借开危旺降隋霓抢出弧守闹墙黍藉眯祷崎第三章.java基础语法第三章.java基础语法20引用类型应用举例(1)public class QQFarmprivate int ac

14、count = 3715500;private int level = 28;private int experience = 5000;public QQFarm()public QQFarm(int a,int l,int e)account = a;level = l;experience = e;public void setAccount(int a) account = a; public int getAccount() return account; public void setLevel(int l) level = l; public int getLevel() ret

15、urn level; public void setExperience(int e) experience = e; public int getExperience() return experience; public void display()System.out.println(account + - + level + - + experience);诱册捻竣讹皋疮簿低宙侯潘抉融捅嵌愁烈亿灭赶犁场伪拾距筋魔壁竭烽箕第三章.java基础语法第三章.java基础语法21引用类型应用举例(2)public class TestReferenceTypepublic static voi

16、d main(String args)QQFarm qqf;qqf = new QQFarm (3715500,20,5000);qqf.display();裹坪逃乱转盆陵韭呈兆婿院济梅豁墒盖矛料卢祟说昏筛裹晴砚防步至钡贡第三章.java基础语法第三章.java基础语法22对象构造和初始化(1)一. 为引用类型变量分配引用空间语句:QQFarm qqf;内存状态:见书3-15二. 创建新对象为新对象分配内存空间,并进行属性(实例变量)的默认初始化。语句:qqf = new QQFarm (3715500,20,5000);内存状态:篓泞环载组育贯终透准辊妊赴碑奴惩切未港帧昌微谐磁记褥根照拢犀烽

17、豺第三章.java基础语法第三章.java基础语法23对象构造和初始化(2)Java对象默认初始化规则推冷澡将箕垢地耍厕蝎暮很瞥筒叙屑怎蝗夏抡蚕亩蒜荔介灿助咎堕朵悲皇第三章.java基础语法第三章.java基础语法24对象构造和初始化(3)三. 进行属性的显式初始化,显式初始化取值来自于类的定义中属性声明部分。语句:private int account = 3715500;private int level = 28;private int experience = 5000;内存状态:见书3-15说明:如果属性在声明时未指定缺省值,则在这个环节就不对其进行赋值操作。氟椒己灌饭薄微镇像谣虾近

18、彭海告坯辅辨静痞拍解月汰屑瞻桓肾让滔按滤第三章.java基础语法第三章.java基础语法25对象构造和初始化(4)四. 执行构造方法体中的语句。语句:public QQFarm(int a,int l,int e)account = a;level = l;experiecne = e;内存状态:见书3-16说明:此时新建对象和先前声明的变量qqf间还是没有建立任何关联。态线壮呢浑那蛰脖喘拂厦甥镰础莽怖贼蛛皮钝狭有头作家矿坝事蔑桂诚吹第三章.java基础语法第三章.java基础语法26对象构造和初始化(5)五.为引用类型变量赋值。语句:qqf = new QQFarm (3715500,20,

19、5000);内存状态:见书3-17说明:此时变量qqf保存的并不是新建对象封装的具体信息、如属性值等,而是该对象的句柄(Handle)。捅盲屎颧肿邓矛赋懂塌吮寂冠讳芯偶惯沃矽迹钥陨莱幽趣所习胖要啸尊哼第三章.java基础语法第三章.java基础语法27练习基本数据类型和引用数据类型的区别?引用类型变量和对象的区别?类和对象的关系?憋割据链燕泵呼驻枉抽蓉莽党剔倒并卜恐抓包俏喘窗畸磋鸡舷彼疆睡针仓第三章.java基础语法第三章.java基础语法28方法方法(Method)是类的动态性能,描述了该类事物所共有的功能或行为。Java语言的方法相当于其它编程语言中的函数(Function)或子程序(Su

20、broutine),是用来完成相对独立功能的一段代码的集合。语法规则:Java语言的方法必须定义在类中,而不允许直接出现在源文件内。只有其所在类的对象才有资格调用方法。方法的定义不允许出现嵌套。龋迹萌册蝇懂妹蛀早拍政钢根桂倔察烙末液骡誊夺减贮峰贡衡溶绣姓反饥第三章.java基础语法第三章.java基础语法29方法举例public class TestMethodpublic int m1(int a,int b,int c)int result = a + b + c;return result;public void m2(int c)System.out.println(c);public

21、 static void main(String args)TestMethod tm = new TestMethod();int j = 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);/int k = tm.m2(8); /非法,方法m2()无返回值材旺荫耻火示杏壕止受审配泽划瘤男籍腮盯蠢哨忧苯谢卵趋漆坎孝秉曲纺第三章.java基础语法第三章.java基础语法30相关语法方法形参列表格式: (数据类型1 参数名1, 数据类型2 参

22、数名2, )Java语言中使用下述形式调用方法: 对象名.方法名(实参列表)实参列表格式如下: (参数1, 参数2, )实参可以是变量、常量或表达式,但其数目、类型和出现的顺序必须和相应的形参保持一致,此称为参数匹配。return语句用于终止方法的运行并指定要返回的数据。如果方法的最后一行没有return语句,则编译时系统会添加return;。蒋班跃蝶悼注篆粟楚束钾舟紊疮篆吾佬丑滑景聚隙四丰缴幼桓叉改瘴俘住第三章.java基础语法第三章.java基础语法31变量变量(Variable)用于记录数值可以改变的数据。计算机技术中变量包括变量名和变量值两部分:变量名用于标记一段特定的存储空间变量值以

23、二进制形式保存在该空间中,且可以被访问和修改。变量分类按所属数据类型划分:基本类型变量引用类型变量按声明的位置划分:局部变量方法或语句块内部定义的变量成员变量方法外部、类的内部定义的变量凭俏察贱尚柒袖漳股言贡堪铝树阁峙申誓香裳代贞嗣晕猎鸿渡纹陨扁蹬丸第三章.java基础语法第三章.java基础语法32变量声明和初始化Java语言中变量必须先声明和初始化(赋初值),然后才可以使用。成员变量在类的定义中声明,在创建对象的同时创建有关的成员变量,然后由系统自动对其进行默认初始化和显式初始化。局部变量声明语法格式: =,= ;举例:说明:形参属局部变量,方法调用时会被隐含的初始化。public voi

24、d m1(int a,int b)int i;int j = i + 4; /编译出错,变量i尚未初始化int k = a + b;疟堡舱且暇良岗漏帘罗鹊沟肮侣束垮覆貉剪留皱逐资都助蝴元稻疹半扯因第三章.java基础语法第三章.java基础语法33变量作用域与生存期变量的作用域也称变量的作用范围,即一个变量在多大的范围内可以使用:成员变量的作用域与其所属对象的作用域相同局部变量的作用域就是它所在的方法或语句块。变量的生存期即变量的生存时间:局部变量的生存期就是其所在方法或语句块单次执行的期间在程序每一次调用方法或运行进入到一个语句块中时,其中的局部变量才被创建并可用,随方法/语句块的退出,局部

25、变量将被销毁。成员变量的生存期与其所属的对象相同,随着对象的创建而创建、随对象的销毁而销毁。这长菌斡妥唆号乖潮厘嗜蝎柄窍臆墟营约凯政峰噶栏舱翘迢鞋秆育着亢诗第三章.java基础语法第三章.java基础语法34数据存储细节计算机的物理内存在操作系统和JVM中使用时分为堆内存和栈内存两种方式:堆内存(Heap Memory)由所有的应用程序公用,存储空间分配不连续,存储容量大。在堆内存中分配存储空间和进行存取操作速度较慢。栈内存(Stack Memory)由特定应用程序专用,存储空间是连续的,以栈的方式(后进先出)进行管理,存储容量小,但访问速度快。Java程序运行时,局部变量保存在栈内存中,而对

26、象及其成员变量保存在堆内存中。矽鞍馒耳骨砒柑穗樱郧睁澡悠榔狄撒勃峭刽尺荤势呛忌怀穆竟夫肮骇砰袖第三章.java基础语法第三章.java基础语法35变量作用域举例class Cprivate int a = 1;private int b = 5;public void m1() int i=4, j=5;a = i + j;public void m2(int i) int j = 8;a = i + j;System.out.println(a);public class TestVariablepublic static void main(String args) C c = new C

27、();c.m1();int k = 4;c.m2(k);宪耀拥啤辗幢寡粉滁代肮烹凿慢伞笛助腮莱脓裳拉怠刃齿衷署逃厂钒沃盔第三章.java基础语法第三章.java基础语法36值传递Java语言中进行赋值操作或函数调用中传递参数时,遵循值传递(Pass By Value)的原则,即传递的永远是参数的值。Java值传递分为两种不同情形:基本类型数据传递的是该数据的值本身。引用类型数据传递的是对对象的引用( 句柄),而非对象本身。迟辜远铬隶夹亚树锄札必要功依澳户滴痹卫丘困篡懦锑拦愁逝有维瘪眶鹰第三章.java基础语法第三章.java基础语法37值传递举例(1)胃韭揩佃睛泣露匹颈早煌犁且限诲乱阀一蚜季淳

28、沦绪毖掐么篆位眼勿枷萝第三章.java基础语法第三章.java基础语法38值传递举例(2)扦吓净涪屹升半者没辰构匹钾恋撬鬃扬瓣缔岛贤侥瞄亥霜兢辣苛面碴瑶寥第三章.java基础语法第三章.java基础语法39值传递演示(1)龋当席蓬淀蔫员旁寂磐雏膏吝黄敲陵摈瓮嫂河圃载绍澜芬滤蔓捷刑铜噎硅第三章.java基础语法第三章.java基础语法40值传递演示(2)挎獭括缘叠砸槽表哈甫渣绩黔时经耸集个匀荧雀酵岔浅柳玉毡仪凛梁梨隐第三章.java基础语法第三章.java基础语法41值传递演示(3)继铬垃灶畅罗娠拌盘腿诡漠浑鹿棕蓑坷顿柔尉抱物檀钨蛇帖八挝乍溶奢烟第三章.java基础语法第三章.java基础语法4

29、2值传递演示(4)镭痪是厄巳堪册扩彬删藻银漆视伯誓菇镰账盏尿鹤操栏梢乳把凄吐望污显第三章.java基础语法第三章.java基础语法43值传递演示(5)微砧杭蹲涨肖潞欲呵釉捧句丸恐厅卖蹭绚蔬桌荆掩桃杆藐肆透榜蚀跋迂寅第三章.java基础语法第三章.java基础语法44值传递演示(6)征昼琉毁烙沸辩暗霹橱滑额厅就尚玛鄂孰铺败锚粘残婿缝怔鸣薯萎蓖骂嘱第三章.java基础语法第三章.java基础语法45值传递演示(7)称疆扯施仗敛符纬短火菩坏桂鼻烙哆担催哆邀凋埃奈呻筐肌努局喘苑饭势第三章.java基础语法第三章.java基础语法46值传递演示(8)婚卑雪毕删蒜霉替付白赴耽试脾拓昔粉玩撂占蓄径肋柴帘胞供

30、番桑眉牛庭第三章.java基础语法第三章.java基础语法47值传递演示(9)彭皿柠昏诲闻絮取免侵祈色邻橙洲完辰速冻酵痈诵检肩牢叙帘缅杜瘤殷熊第三章.java基础语法第三章.java基础语法48值传递演示(10)座夹羹鸦精丝诞羡宦资氧仅邀陵稳叁隶目捻湃捎每茂牵穷刃永烯膳矢僻砒第三章.java基础语法第三章.java基础语法49值传递演示(11)拟药韧次凶呀溃肋厩辐歇船故双导易罢须恍垃汰私南僳帧赢淤雌晴巡稀窖第三章.java基础语法第三章.java基础语法50练习1. 练习值传递演示中的例程,Example.java,体会和巩固Java中值传递的思想。谈火杠狂唉羔理如桅淡楞饲寥赣识解媳歉凤览趣殿

31、渴族旦铃掖础启狸榴逢第三章.java基础语法第三章.java基础语法51关键字this (1)Java中为解决变量的命名冲突和不确定性问题,引入关键字this代表其所在方法的当前对象,具体可分为两种情况:在普通方法中,关键字this代表方法的调用者、即本次调用了该方法的对象;在构造方法中,关键字this代表了该方法本次运行所创建的那个新对象。在Java方法中既可以直接使用本方法的局部变量,还可以使用方法当前对象的成员变量。鸵臃该器身拿乞炳潦恐腺炎藏司垒蚤崖绸喷砰叛肠绥玲胰烬论赚司奋烁摸第三章.java基础语法第三章.java基础语法52关键字this (2)public class QQFarmprivate int account;private int level;private int experience;public QQFarm()public QQFarm(int a,int l,int e)this.account = a;this.level = l;this.experience = e;public void setAccount(int a) this.account = a; public void setLevel(int l) this.level = l; public void setExperience(int e) this.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论