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

    第4章面向对象编程(下).ppt

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

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

    第4章面向对象编程(下).ppt

    第第4章章 面向对象编程(下)面向对象编程(下)主讲:郭永锋电话:13603825601E-mail:本讲目标本讲目标掌握属性存取器的使用掌握属性存取器的使用掌握掌握super关键字关键字掌握掌握final关键字关键字掌握掌握abstract关键字关键字理解抽象类与抽象方法理解抽象类与抽象方法理解并掌握接口的定义与使用理解并掌握接口的定义与使用属性存取器(重点、理解)属性存取器(重点、理解)指用于对类的指用于对类的属性(成员变量)属性(成员变量)进行进行存取存取的的方法方法。例例:public class Dog private String name;/属性存取器属性存取器 public void setName(String name)this.name=name;public String getName()return this.name;super关键字(理解)关键字(理解)osuper指指“我父亲我父亲”,要要和和this对照理解对照理解。o如果我们如果我们如果我们如果我们在子类中想使用被子类隐藏了的父类的成员在子类中想使用被子类隐藏了的父类的成员在子类中想使用被子类隐藏了的父类的成员在子类中想使用被子类隐藏了的父类的成员变量或成员方法就可以使用关键字变量或成员方法就可以使用关键字变量或成员方法就可以使用关键字变量或成员方法就可以使用关键字supersuper。例如:例如:o /访问父类对象的访问父类对象的brand成员方法成员方法 super.brand=“金毛金毛”;o super.eat();/调用父类对象的调用父类对象的eat成员方法成员方法final关键字(理解)关键字(理解)ofinal 关键字可以修饰关键字可以修饰类类、成员变量成员变量、成员方法成员方法和和局部变量局部变量,但作用各不相同。,但作用各不相同。ofinal修饰修饰类类,则类,则类不能被继承不能被继承(不能有子类不能有子类)final class Dog o例如例如 String类就是类就是final的的final关键字关键字ofinal修饰修饰成员变量成员变量,要求该成员变量,要求该成员变量必须初始化必须初始化,而且值而且值以后不能修改以后不能修改ofinal 修饰修饰成员方法成员方法,表示该方法表示该方法不能被子类重不能被子类重写写(override)ofinal修饰修饰局部变量局部变量,该局部变量就会成,该局部变量就会成常量常量abstract只能修饰只能修饰类类或或方法方法。1)用)用abstract修饰的类称为修饰的类称为抽象类。抽象类。例如:例如:abstract class People abstract关键字(理解)关键字(理解)abstract关键字关键字用用abstract修饰的方法称修饰的方法称抽象方法抽象方法。例如:例如:public abstract void eat();1)抽象方法)抽象方法没有方法体没有方法体,即:抽象方法,即:抽象方法只允许只允许声明,不允许实现。声明,不允许实现。2)抽象方法只能存在于)抽象方法只能存在于抽象类抽象类和和接口接口中。中。1 1)abstractabstract类类类类不能使用不能使用不能使用不能使用newnew运算符创建该类的对象运算符创建该类的对象运算符创建该类的对象运算符创建该类的对象 例如:例如:例如:例如:PeoplePeople如果一个如果一个如果一个如果一个抽象类抽象类抽象类抽象类,则如下是,则如下是,则如下是,则如下是错误错误错误错误的:的:的:的:People p=new People();People p=new People();2 2)抽象类)抽象类)抽象类)抽象类必须要产生子类必须要产生子类必须要产生子类必须要产生子类,由,由,由,由子类创建对象子类创建对象子类创建对象子类创建对象,如果一个,如果一个,如果一个,如果一个类是类是类是类是abstractabstract类的子类,它必须具体实现父类的类的子类,它必须具体实现父类的类的子类,它必须具体实现父类的类的子类,它必须具体实现父类的abstractabstract方法。方法。方法。方法。3 3)abstractabstract类类类类可以有可以有可以有可以有abstractabstract方法方法方法方法,也可以有非抽也可以有非抽也可以有非抽也可以有非抽象方法。象方法。象方法。象方法。抽象类(理解)抽象类(理解)一个一个abstract类不关心功能的具体行为,类不关心功能的具体行为,功能功能的具体行为由子类负责实现的具体行为由子类负责实现,抽象类中的抽象方法抽象类中的抽象方法可以强制子类必须给出这些方法的具体实现。可以强制子类必须给出这些方法的具体实现。例:abstract class 机动车机动车 abstract void 启动启动();abstract void 加速加速();abstract void 刹车刹车();抽象类(理解)抽象类(理解)class class 手动档轿车手动档轿车手动档轿车手动档轿车 extends extends 机动车机动车机动车机动车 void void 启动启动启动启动()()System.out.printlnSystem.out.println(踏下离合器,换到一挡踏下离合器,换到一挡踏下离合器,换到一挡踏下离合器,换到一挡););System.out.printlnSystem.out.println(然后慢慢抬起离合器然后慢慢抬起离合器然后慢慢抬起离合器然后慢慢抬起离合器););void void 加速加速加速加速()()System.out.printlnSystem.out.println(踩油门踩油门踩油门踩油门););void void 刹车刹车刹车刹车()()System.out.printlnSystem.out.println(踏下离合器,踏下刹车板踏下离合器,踏下刹车板踏下离合器,踏下刹车板踏下离合器,踏下刹车板););System.out.printlnSystem.out.println(然后将挡位换到一挡然后将挡位换到一挡然后将挡位换到一挡然后将挡位换到一挡););class class 自动档轿车自动档轿车自动档轿车自动档轿车 extends extends 机动车机动车机动车机动车 void void 启动启动启动启动()()System.out.printlnSystem.out.println(使用前进挡使用前进挡使用前进挡使用前进挡););System.out.printlnSystem.out.println(然后轻踩油门然后轻踩油门然后轻踩油门然后轻踩油门););void void 加速加速加速加速()()System.out.printlnSystem.out.println(踩油门踩油门踩油门踩油门););void void 刹车刹车刹车刹车()()System.out.printlnSystem.out.println(踏下刹车板踏下刹车板踏下刹车板踏下刹车板););public class public class 测试类测试类测试类测试类 public static void public static void main(Stringmain(String argsargs)手动档轿车手动档轿车手动档轿车手动档轿车 car1=new car1=new 手动档轿车手动档轿车手动档轿车手动档轿车();();自动档轿车自动档轿车自动档轿车自动档轿车 car2=new car2=new 自动档轿车自动档轿车自动档轿车自动档轿车();();car1.car1.启动启动启动启动();();car1.car1.加速加速加速加速();();car1.car1.刹车刹车刹车刹车();();car2.car2.启动启动启动启动();();car2.car2.加速加速加速加速();();car2.car2.刹车刹车刹车刹车();();生活中的接口生活中的接口声卡声卡显卡显卡网卡网卡每种卡的内部结构都不相同,可以把声卡、网每种卡的内部结构都不相同,可以把声卡、网卡、显卡都插在卡、显卡都插在PCI插槽上,而不用担心哪个插槽上,而不用担心哪个插槽是专门插哪个卡的插槽是专门插哪个卡的主板主板 Java接口是一些接口是一些方法特征的集合方法特征的集合,但,但没有方法的实现。没有方法的实现。使用关键字使用关键字使用关键字使用关键字interfaceinterface来定义一个接口。接口的定义和类来定义一个接口。接口的定义和类来定义一个接口。接口的定义和类来定义一个接口。接口的定义和类的定义很相似,的定义很相似,的定义很相似,的定义很相似,分为接口的声明和接口体。分为接口的声明和接口体。分为接口的声明和接口体。分为接口的声明和接口体。1.1.接口的声明接口的声明接口的声明接口的声明 :interface interface 接口的名字接口的名字接口的名字接口的名字 2.2.接口体:接口体:接口体:接口体:接口体中的方法只能进行声明,不许提供方法的实接口体中的方法只能进行声明,不许提供方法的实接口体中的方法只能进行声明,不许提供方法的实接口体中的方法只能进行声明,不许提供方法的实现,现,现,现,所以,方法的定义没有方法体,且用分号所以,方法的定义没有方法体,且用分号所以,方法的定义没有方法体,且用分号所以,方法的定义没有方法体,且用分号“;”结尾结尾结尾结尾(抽象方法)(抽象方法)(抽象方法)(抽象方法)。如:。如:。如:。如:interfaceinterface People People void sleep();void sleep();void void run(intrun(int speed);speed);接口的声明(定义)接口的声明(定义)接口的使用(理解)接口的使用(理解)一个类通过使用一个类通过使用一个类通过使用一个类通过使用关键字关键字关键字关键字implementsimplements 声明自己声明自己声明自己声明自己实实实实现一个或多个接口现一个或多个接口现一个或多个接口现一个或多个接口。如果使用多个接口,用逗号隔开接。如果使用多个接口,用逗号隔开接。如果使用多个接口,用逗号隔开接。如果使用多个接口,用逗号隔开接口名。如:口名。如:口名。如:口名。如:class class ManMan implementsimplements PeoplePeople 注:接口中的方法全部是注:接口中的方法全部是注:接口中的方法全部是注:接口中的方法全部是抽象方法抽象方法抽象方法抽象方法。而且这些方法。而且这些方法。而且这些方法。而且这些方法可以可以可以可以省略省略省略省略abstractabstract关键字。关键字。关键字。关键字。(1 1)如果一个类使用了某个接口,那么)如果一个类使用了某个接口,那么)如果一个类使用了某个接口,那么)如果一个类使用了某个接口,那么这个类必这个类必这个类必这个类必须须须须实现实现实现实现 该接口的该接口的该接口的该接口的所有方法所有方法所有方法所有方法,即为这些方法提供方法体,即为这些方法提供方法体,即为这些方法提供方法体,即为这些方法提供方法体(2 2)特别要注意的是接口中的方法被默认是特别要注意的是接口中的方法被默认是特别要注意的是接口中的方法被默认是特别要注意的是接口中的方法被默认是public public 的,所以的,所以的,所以的,所以类在实现接口方法时一定要用类在实现接口方法时一定要用类在实现接口方法时一定要用类在实现接口方法时一定要用public public 来修饰。来修饰。来修饰。来修饰。(3 3)如果接口的)如果接口的)如果接口的)如果接口的方法的返回类型如果不是方法的返回类型如果不是方法的返回类型如果不是方法的返回类型如果不是void void 的,那么在类中实现该接口方法时,方法体至少要有一的,那么在类中实现该接口方法时,方法体至少要有一的,那么在类中实现该接口方法时,方法体至少要有一的,那么在类中实现该接口方法时,方法体至少要有一个个个个return return 语句。语句。语句。语句。如果是如果是如果是如果是void void 型,类体除了两个大括型,类体除了两个大括型,类体除了两个大括型,类体除了两个大括号外,也可以没有任何语句。号外,也可以没有任何语句。号外,也可以没有任何语句。号外,也可以没有任何语句。使用接口的注意事项:使用接口的注意事项:实例实例publicinterfacePCIpublicvoidstart();publicvoidstop();classSoundCardimplementsPCIpublicvoidstart()System.out.println(Dudu.);publicvoidstop()System.out.println(Soundstop!);Java接口中定义的方法在不同的地方被实现,可以具有完全接口中定义的方法在不同的地方被实现,可以具有完全不同的行为不同的行为这是这是Java接口,相当于主接口,相当于主板上的板上的PCI插槽的规范插槽的规范classNetworkCardimplementsPCIpublicvoidstart()System.out.println(Send.);publicvoidstop()System.out.println(Networkstop!);声卡、网卡都实现了声卡、网卡都实现了PCI插槽的规范,但行为完全不同插槽的规范,但行为完全不同publicclassAssemblerpublicstaticvoidmain(Stringargs)PCInc=newNetworkCard();PCIsc=newSoundCard();nc.start();sc.start();可以使用可以使用Java接口标识类型接口标识类型运行时,根据实际创建的对象类型调用相应的方法实现运行时,根据实际创建的对象类型调用相应的方法实现Dudu.Send.控制台输出控制台输出实例实例

    注意事项

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

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




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

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

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

    收起
    展开