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

    动物特性的面向对象描述优秀PPT.ppt

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

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

    动物特性的面向对象描述优秀PPT.ppt

    动物特性的面向对象描述第1页,本讲稿共16页 问题描述q动物特性描述q狗生活在陆地上(是一种陆生动物),既是哺乳类的也是肉食性的。狗通常的时候和人打招呼会通过“摇摇尾巴”,在被抚摸感到舒服的时候,会“旺旺叫”,而在受到惊吓情绪烦躁时,会发出“呜呜”声;q猫也生活在陆地上(是一种陆生动物),既是哺乳类的也是肉食性的。猫通常的时候和人打招呼会发出“喵”的声音,在被抚摸情绪很好时,会发出“咕噜咕噜”声,而在受到惊吓时,会发出“嘶嘶”声;q青蛙是一种两栖动物(既是水生动物也是陆生动物),既不是哺乳类的也不是肉食性的,属于卵生。当青蛙情绪好的时候,会在岸边“呱呱呱”的唱歌,而在受到惊吓时,会“扑通一声跳入水中”;2第2页,本讲稿共16页问题分析q首先需要抽取问题描述中对象q分析每个对象所具有的特征q分析每个对象所发出的动作q从这些对象的特征中,抽取类的属性和方法q分析类之间的关系,画出类结构图3第3页,本讲稿共16页难点分析-1抽象类和对象的基本方法:q抽取对象的基本的方法:找出句子中所使用的名词 例如:在句子“小猫喵喵叫”中,我们能够确定一个对象:猫;q确定对象发出的行为动作的基本的方法:找出句子中的动词 例如:“旺旺叫”、“喵喵叫”都属于对象发出的动作;q确定对象的属性或者特征的基本的方法:找出句子中的形容词 例如:“哺乳性的”“肉食性的”“卵生的”等等;q“是”的关系一般抽象为继承 例如:狗是一种动物,意味着:“狗”类 继承自“动物”类;q“有”的关系一般抽象为类的属性 例如:动物都有情绪,意味着:“情绪”是“动物”类的一个属性;4第4页,本讲稿共16页难点分析-2 Dog:int numberOfLegsDog()sayHello()sayHello(int newValue)getNumberOfLegs()Cat:int numberOfLegsCat()sayHello()sayHello(int newValue)getNumberOfLegs()Frog:int numberOfLegsFrog()sayHello()sayHello(int newValue)getNumberOfLegs()hasGills()laysEggs()WaterAnimal:hasGills()laysEggs()LandAnimal:getNumberOfLegs()Animal:boolean mammalboolean carnivorousint moodisMammal()isCarnivorous()setMood(int newValue)getMood()sayHello()sayHello(int moodval)5第5页,本讲稿共16页阶段划分q第一阶段(60分钟):不考虑情绪影响动物打招 呼的方式q第二阶段(40分钟):考虑情绪影响动物打招呼 的方式q第三阶段(60分钟):考虑陆生动物和水生动物6第6页,本讲稿共16页第一阶段q第一阶段(60分钟):不考虑情绪影响动物打招呼的方式q编写Animal类,没有mood属性,只有一种SayHello方法;q编写Dog类、Cat类和Frog类,分别继承自Animal类,实现与Animal类不同的功能;q编写main方法,分别实例化以上三个类的三个对象,测试类方法实现的正确性;q要求学员自己动手编码,在编码的过程中解答学员提出的问题7第7页,本讲稿共16页阶段检查q针对第一阶段抽查学员的编码结果q教员给出点评8第8页,本讲稿共16页第一阶段标准代码演示q第一阶段编码的结果:abstract class Animal protected boolean mammal=true;protected boolean carnivorous=true;public boolean isMammal()return(mammal);public boolean isCarnivorous()return(carnivorous);abstract public String sayHello();abstractabstractprotectedprotectedclass Dog extends Animal public String sayHello()return(摇摇尾巴摇摇尾巴);class Cat extends Animal public String sayHello()return(喵喵叫喵喵叫);class Frog extends Animal public Frog()mammal=false;carnivorous=false;public String sayHello()return(呱呱呱呱呱呱);extendsextendsextendspublic String sayHello()return(摇摇尾巴);public String sayHello()return(喵喵叫);public String sayHello()return(呱呱呱);public Frog()mammal=false;carnivorous=false;public class HelloWorld public static void main(String args)Dog animal1=new Dog();Cat animal2=new Cat();Frog animal3=new Frog();if(animal1.isMammal()System.out.println(狗是哺乳动物狗是哺乳动物);else System.out.println(狗不是哺乳动物狗不是哺乳动物);if(animal1.isCarnivorous()System.out.println(狗是肉食动物狗是肉食动物);else System.out.println(狗不是肉食动物狗不是肉食动物);System.out.println(狗通常的情况下,和人打招呼的方式为:狗通常的情况下,和人打招呼的方式为:+animal1.sayHello();Dog animal1=new Dog();Cat animal2=new Cat();Frog animal3=new Frog();animal1.isMammal()animal1.isCarnivorous()animal1.sayHello()9第9页,本讲稿共16页第二阶段q 第二阶段(40分钟):考虑情绪影响动物打招 呼的方式q扩充Animal类、Dog类、Cat类和Frog类,增加 Animal类的mood属性,并实现SayHello方法的多态性;q扩充main方法;q 要求学员自己动手编码,在编码的过程中解答 学员提出的问题10第10页,本讲稿共16页阶段检查q针对第二阶段抽查学员的编码结果q教员给出点评11第11页,本讲稿共16页第二阶段标准代码演示q第二阶段的编码结果:abstract class Animal public static final int SCARED=1;/情绪不好,烦躁 public static final int COMFORTED=2;/情绪好 protected boolean mammal=false;protected boolean carnivorous=false;protected int mood=COMFORTED;/情绪属性 public boolean isMammal()return(mammal);public boolean isCarnivorous()return(carnivorous);abstract public String sayHello();abstract public String sayHello(int moodval);public void setMood(int newValue)mood=newValue;public int getMood()return(mood);public static final int SCARED=1;/情绪好public static final int COMFORTED=2;/情绪不好,烦躁protected int mood=COMFORTED;/情绪属性public void setMood(int newValue)mood=newValue;public int getMood()return(mood);abstract public String sayHello();abstract public String sayHello(int moodval);class Dog extends Animal public String sayHello()return(摇摇尾巴);public String sayHello(int moodval)this.setMood(moodval);switch(mood)case SCARED:return(呜呜叫);case COMFORTED:return(旺旺旺叫);return(摇摇尾巴);class Cat extends Animal public String sayHello(int moodval)class Frog extends Animal public String sayHello(int moodval)public String sayHello(int moodval)this.setMood(moodval);switch(mood)case SCARED:return(呜呜叫);case COMFORTED:return(旺旺旺叫);return(摇摇尾巴);public class HelloWorld public static void main(String args)Dog animal1=new Dog();Cat animal2=new Cat();Frog animal3=new Frog();System.out.println(狗通常的情况下,和人打招呼的方式为:+animal1.sayHello();System.out.println(狗被抚摸情绪好的时候,打招呼的方式是:+animal1.sayHello(Animal.COMFORTED);System.out.println(狗烦躁的时候,会:+animal1.sayHello(Animal.SCARED);System.out.println(狗通常的情况下,和人打招呼的方式为:+animal1.sayHello();System.out.println(狗被抚摸情绪好的时候,打招呼的方式是:+animal1.sayHello(Animal.COMFORTED);System.out.println(狗烦躁的时候,会:+animal1.sayHello(Animal.SCARED);12第12页,本讲稿共16页第三阶段q第三阶段(60分钟):考虑陆生动物和水生动物q定义LandAnimal接口和WaterAnimal接口;q扩充Dog类、Cat类和Frog类,使其实现相应的接口;q扩充main方法;q要求学员自己动手编码,在编码的过程中解答学员提出的问题13第13页,本讲稿共16页阶段检查q 针对第二阶段抽查学员的编码结果q 抽查学员编写的完整代码,要求学员上台讲解,并演示运行结果q 教员给出点评14第14页,本讲稿共16页第三阶段标准代码演示q第三阶段的编码结果:interface LandAnimal/陆生动物接口 public int getNumberOfLegs();/返回有多少只脚interface WaterAnimal/水生动物接口 public boolean getGillFlag();/返回是否有腮 public boolean getLaysEggs();/返回是否产卵interfaceinterfaceclass Dog extends Animal implements LandAnimal private int numberOfLegs=4;public int getNumberOfLegs()return(numberOfLegs);/实现 LandAnimal接口class Frog extends Animal implements LandAnimal,WaterAnimal private boolean gillFlag=true;private boolean laysEggs=true;private int numberOfLegs=4;private boolean tailFlag=true;/实现 WaterAnimal接口 public boolean getGillFlag()return(gillFlag);public boolean getLaysEggs()return(laysEggs);/实现 LandAnimal接口 public int getNumberOfLegs()return(numberOfLegs);implements LandAnimalimplements LandAnimal,WaterAnimalprivate boolean gillFlag=true;private boolean laysEggs=true;private int numberOfLegs=4;private boolean tailFlag=true;/实现 WaterAnimal接口public boolean getGillFlag()return(gillFlag);public boolean getLaysEggs()return(laysEggs);/实现 LandAnimal接口 public int getNumberOfLegs()return(numberOfLegs);public class HelloWorld public static void main(String args)Dog animal1=new Dog();Cat animal2=new Cat();Frog animal3=new Frog();System.out.println(狗有狗有+animal1.getNumberOfLegs()+条腿条腿);System.out.println(猫有猫有+animal2.getNumberOfLegs()+条腿条腿);if(animal3.getLaysEggs()System.out.println(青蛙产卵青蛙产卵);else System.out.println(青蛙不产卵青蛙不产卵);if(animal3.getGillFlag()System.out.println(青蛙有鳃青蛙有鳃);System.out.println(青蛙有青蛙有+animal3.getNumberOfLegs()+条腿条腿);animal1.getNumberOfLegs()animal2.getNumberOfLegs()animal3.getNumberOfLegs()animal3.getLaysEggs()animal3.getGillFlag()在环境中演示标准程序并展示输出结果15第15页,本讲稿共16页总结q通过本次项目案例练习了面向对象的Java实现,基本囊括了面向对象的三大特征:封装、继承、多态q巩固的知识点qJava基本的程序结构;q类和对象;q类的封装,包括修饰符的使用(private/public/protected);q抽象类、抽象方法(abstract关键字);qfinal关键字;q类的继承(extends关键字);q接口的定义和实现(interface/implements关键字);q多态;16第16页,本讲稿共16页

    注意事项

    本文(动物特性的面向对象描述优秀PPT.ppt)为本站会员(石***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

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




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

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

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

    收起
    展开