欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    《移动通信软件编程基础—Java语言》第3章.ppt

    • 资源ID:79008883       资源大小:722KB        全文页数:36页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《移动通信软件编程基础—Java语言》第3章.ppt

    3面向对象技术 第章知识回顾JavaJava语言基础语言基础JavaJava数据类型分类数据类型分类变量是存储数据的基本单元变量是存储数据的基本单元数据类型转换数据类型转换数组用于将相同数据类型的多项数据存储在连续的内存单元中数组用于将相同数据类型的多项数据存储在连续的内存单元中 JavaJava中提供了一组丰富的运算符中提供了一组丰富的运算符 JavaJava支持的控制语句编程结构支持的控制语句编程结构简单数据类型简单数据类型复杂数据类型复杂数据类型自动类型转换自动类型转换强制类型转换强制类型转换if-elseif-elseswitchswitchwhilewhiledo-whiledo-whileforfor2本章目标理解对象理解对象理解类理解类 理解封装理解封装理解对象与类之间的关系理解对象与类之间的关系掌握包的创建和导入掌握包的创建和导入3类和对象类和对象v对象表示现实世界中某个具体的事物。v抽象是从特定的实例中抽取共同的性质以形成一般化概念的过程。v对象具有两方面的含义:99 在现实世界中:在现实世界中:在现实世界中:在现实世界中:是客观世界中的一个实体是客观世界中的一个实体是客观世界中的一个实体是客观世界中的一个实体99 在计算机世界中:在计算机世界中:在计算机世界中:在计算机世界中:是一个可标识的存储区域是一个可标识的存储区域是一个可标识的存储区域是一个可标识的存储区域4对对象象对对对对 象象象象面向对象编程的核心为计算机应用程序提供实用基础完成特定任务表示现实世界中的实体“对象是存在的具体实体,具有明确定义的状态和行为。对象是存在的具体实体,具有明确定义的状态和行为。”5对对象的示例象的示例收银员对象顾客对象顾客姓名:朱丽叶年龄:28体重:52千克操作:购买商品状态状态姓名:布兰尼职衔:收银员年龄:35体重:60千克操作:收款打印帐单行为行为6类和对象类和对象类是具有共同属性和行为的对象的抽象。类可以定义为数据和方法的集合。类也称为模板,因为它们提供了对象的基本框架。类对象抽抽象象实实例例化化属性或状态属性或状态操作或行为操作或行为数据或变量数据或变量方法方法封装的实体封装的实体=数据数据+方法方法7类类和和对对象的区象的区别别 类是概念模型,定义对象的所 有特性和所需 的操作对象是真实的模型类和对象类和对象类定义实体对象是实际的实体类是对象的原型类是对象的原型类是对象的原型类是对象的原型所有属于同一个类所有属于同一个类所有属于同一个类所有属于同一个类的对象都具有相同的对象都具有相同的对象都具有相同的对象都具有相同的特性和操作的特性和操作的特性和操作的特性和操作8类类v类以共同特性和操作定义实体v类是用于组合各个对象所共有操作和属性的一种机制形状类形状类动物类动物类汽车类汽车类类的示例类的示例“类是具有相同属性和行为的一组对象的集合类是具有相同属性和行为的一组对象的集合”9类类和和对对象的示例象的示例雇员雇员收银员系统管理员仓库管理员促销员采购经理10封装封装v信息隐藏,隐藏对象的实现细节,不让用户看到v将东西包装在一起,然后以新的完整形式呈现出来例如,两种或多种化学药品组成一个胶囊将方法和属性一起包装到一个单元中,单元以类的形式实现“隐藏属性、方法或实现细节的过程称为封装。隐藏属性、方法或实现细节的过程称为封装。”封装11 封装的示例封装的示例 3-2有选择地提供数据法拉力公司迪斯尼汽车公司公共电话号码电子邮箱产品种类私有备件的制造方法备件库存备件的制造成本公共电话号码电子邮箱汽车种类私有汽车的组装方法汽车库存汽车的组装成本12在在JavaJava中创建类中创建类Java语言中定义类的语法语言中定义类的语法13创建类创建类 classnametypevariable1;typevariableN;typemethodname1(parameter-list)/方法体typemethodnameN(parameter-list)/方法体 在类中,属性是通过成员变在类中,属性是通过成员变量体现的,而操作是用成员量体现的,而操作是用成员函数(又称为方法)实现的。函数(又称为方法)实现的。Java中定义类的通用格式:中定义类的通用格式:成员变量(对象属性)成员变量(对象属性)成员方法成员方法(对象行为(对象行为或操作)或操作)14创建类规则创建类规则类的命名规则:类的命名规则:v不能为不能为 Java Java 中的关键字中的关键字v不能包含空格或点号不能包含空格或点号“.”v只能以下划线只能以下划线“_ _”、“$”符号或字母开头符号或字母开头15在在JavaJava类中定义方法类中定义方法Java语言中定义方法的语法语言中定义方法的语法16定义方法定义方法定义方法的一般格式:accesstypemethodname1(parameter-list)/方法体发往某个对象的消息对应于发往某个对象的消息对应于一个方法调用。作为对消息一个方法调用。作为对消息的响应,对象将执行一个类的响应,对象将执行一个类似于过程体的方法。方法是似于过程体的方法。方法是包含在类中的函数。包含在类中的函数。方法名称方法名称返回类型返回类型修饰符,修饰符,可选可选参数列表,参数列表,可选可选举例:举例:publicvoidsetdate(intday,intmonth,intyear)day=23;month=7;year=2003;17缺省初始值缺省初始值Java 保证了在任何代码使用该内存之前,已至少将内存初始化为可预知的缺省值 类型缺省值类型缺省值byte(byte)0charu0000 short(short)0float0.0Fint0double0.0Dlong0L对象引用nullbooleanfalse18在在JavaJava类中定义方法类中定义方法classclass PersonPerson StringString namename;/定义名字定义名字 intint scorescore;/定义得分定义得分 public public StringString getNamegetName()()returnreturn namename;19构造方法构造方法构造方法构造方法是一个特殊的是一个特殊的方法方法:vJavaJava中的每个类都有构造方法中的每个类都有构造方法v创建类实例时调用的方法创建类实例时调用的方法v与类同名,但没有返回类型与类同名,但没有返回类型vJavaJava为对象分配内存,初始化实例变量并调用构为对象分配内存,初始化实例变量并调用构造方法造方法v构造方法只能由构造方法只能由newnew运算符调用运算符调用v两种构造方法:两种构造方法:参数化构造方法参数化构造方法隐式构造方法隐式构造方法20构造方法构造方法构造方法名称与类名称相同构造方法没有返回类型其任务是在创建对象时初始化其内部状态classFruitbooleanseedLess;booleanseasonal;floatprice;Fruit(booleanseed,booleanseason,floatp)seedLess=seed;seasonal=season;price=p;21构造方法构造方法隐式构造方法隐式构造方法classclass Person Person StringString name;name;/定义参赛选手名字定义参赛选手名字 intint score;score;/定义参赛选手得分定义参赛选手得分 intint giveNumgiveNum;/定义参赛选手本轮的出拳定义参赛选手本轮的出拳 创建对象时自动创建一个无参数的构造方法创建对象时自动创建一个无参数的构造方法 22创建对象创建对象v类实例化可生成对象,对象通过消息传递来进行类实例化可生成对象,对象通过消息传递来进行交互。交互。v消息传递即激活指定的某个对象的方法以改变其消息传递即激活指定的某个对象的方法以改变其状态或让它产生一定的行为。状态或让它产生一定的行为。v一个对象的生命周期包括三个阶段:生成、使用一个对象的生命周期包括三个阶段:生成、使用和消除。和消除。23创建对象创建对象/实例化对象选手实例化对象选手JohnPerson Person p1p1 =newnew Person(Person(JohnJohn););/实例化对象选手实例化对象选手LisaPerson Person p2p2 =newnew Person(Person(LisaLisa););/实例化裁判实例化裁判DaveJudgment Judgment j1j1 =newnew Judgment(Judgment(DaveDave););24创建对象创建对象使用下列语法可创建对象:new 构造函数关键字 new 通常称为创建运算符,用于分配对象内存,并将该内存初始化为缺省值。一旦 new 完成分配和初始化内存,它就将调用构造函数来执行对象初始化。当创建一个类时,只是创当创建一个类时,只是创建了一种新的数据类型。建了一种新的数据类型。对象是类的一个实例。对象是类的一个实例。classFruitDemopublicstaticvoidmain(Stringargs)Fruitf=newFruit(true,false,50.0F);创建对象创建对象25this引用引用publicclassPassTestintx;PassTest(intx)this.x=x;publicvoidpassingValue()System.out.println(“x等于等于+x);publicstaticvoidmain(Stringargs)PassTesttest=newPassTest(10);test.passingValue();v关键字关键字 this 与对象关联与对象关联v它用于指示当前对象它用于指示当前对象指明此对象的变指明此对象的变量量 x x 应赋值为应赋值为通过构造函数传通过构造函数传递的自变量递的自变量 x x 的值。的值。26方法重载方法重载方法重载方法重载是指多个方法享有是指多个方法享有相同相同的的方法名方法名。重载的方法具备如下特点:重载的方法具备如下特点:v方法的参数必须不同方法的参数必须不同方法参数的个数不同方法参数的个数不同参数类型不同参数类型不同v返回类型不能用来区分重载的方法返回类型不能用来区分重载的方法 27方法重载(方法重载(overloading)方法重载是Java实现面向对象的多态性机制的一种方式。同一个类中多个方法有相同的名字,不同的参数列表,这种情况称为方法重载。返回类型不同并不足以构成方法重载。当重载方法被调用时,编译器根据参数的类型和数量来确定实际调用哪个重载方法的版本。28方法重载示例方法重载示例classCalculationpublicvoidadd(inta,intb)intc=a+b;System.out.println(两个整数相加得+c);publicvoidadd(floata,floatb)floatc=a+b;System.out.println(两个浮点数相加得+c);publicvoidadd(Stringa,Stringb)Stringc=a+b;System.out.println(两个字符串相加得+c);classCalculationDemopublicstaticvoidmain(Stringargs)Calculationc=newCalculation();c.add(10,20);c.add(40.0F,35.65F);c.add(早上早上,好好);编译器决定编译器决定调用版本调用版本29构造方法重载构造方法重载Java 为每一个类自动提供缺省构造函数缺省构造函数将成员变量的值初始化为缺省值一旦创建了自己的构造函数,缺省的构造函数将不复存在。重载构造函数提供了一组创建对象的方式,可以根据需要决定是否带初始参数。publicclassconstructOverloadintx;constructOverload()x=0;System.out.println(不带参数的构造函数不带参数的构造函数);constructOverload(intx)this.x=x;System.out.println(带一个参数的构造函数带一个参数的构造函数);30构造方法重载构造方法重载 Person()Person()/构造方法构造方法 name name=“选手选手”;/给姓名赋初值给姓名赋初值 score score=0 0;/给成绩赋初值给成绩赋初值 PersonPerson(String(String nana)/构造方法构造方法 name name=nana;/给姓名赋初值给姓名赋初值 score score=0 0;/;/给成绩赋初值给成绩赋初值 PersonPerson(String(String nana,int,int scsc)/构造方法构造方法 name name=nana;/给姓名赋初值给姓名赋初值 score score=0 0;/给成绩赋初值给成绩赋初值 构构造造方方法法重重载载31包包v包允许将类组合成较小的单元(类似文件夹),包允许将类组合成较小的单元(类似文件夹),使其易于找到和使用相应的类文件。使其易于找到和使用相应的类文件。v有助于避免命名冲突,包基本上隐藏了类并避免有助于避免命名冲突,包基本上隐藏了类并避免了名称上的冲突。了名称上的冲突。v包允许在更广的范围内保护类、数据和方法,可包允许在更广的范围内保护类、数据和方法,可以在包内定义类,而在包外的代码不能访问该类。以在包内定义类,而在包外的代码不能访问该类。v包可以是类、接口和子包的集合包可以是类、接口和子包的集合32使用包使用包创建包packagemypackage;访问 Java 包成员mypackage.My_Class导入包importpackage_name.*;导入子包importpackage_name.subpackage_name.*;33包的创建包的创建packagepackage game.persongame.person;importimport java.util.java.util.RandomRandom;publicpublic classclass Person Person StringString name;name;/定义参赛选手名字定义参赛选手名字 intint score;score;/定义参赛选手得分定义参赛选手得分 intint giveNumgiveNum;/定义参赛选手本轮的出拳定义参赛选手本轮的出拳 publicpublic Person(Person(StringString name)name)/构造函数构造函数 this.this.namename=name;=name;score=score=0 0;包的创建包的创建34包的导入包的导入importimport game.person.Persongame.person.Person;importimport game.manager.Judgmentgame.manager.Judgment;public classpublic class CompareTwoCompareTwo public static voidpublic static void main(main(StringString argsargs)/)/程序入口程序入口 Person p1 Person p1=newnew Person(JohnPerson(John););Person p2 Person p2=newnew Person(LisaPerson(Lisa););Judgment j1 Judgment j1=newnew Judgment(DaveJudgment(Dave););包的导入包的导入35总结面向对象技术面向对象技术对象由状态和行为组成对象由状态和行为组成类是具有相同属性和行为的一组对象的集合类是具有相同属性和行为的一组对象的集合封装是隐藏对象实现细节的过程,以便不让用户看到封装是隐藏对象实现细节的过程,以便不让用户看到类的变量和方法可被该类的实例访问类的变量和方法可被该类的实例访问圆点符号用于访问对象的成员圆点符号用于访问对象的成员构造方法在创建对象时初始化对象构造方法在创建对象时初始化对象36

    注意事项

    本文(《移动通信软件编程基础—Java语言》第3章.ppt)为本站会员(qwe****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开