Java初级教程 第七节 面向对象3.ppt

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
声明包 一旦需要使用另外一个包中的类时,需要将该类导入到当前类中,如需要在程序中使用java.util包下的Scanner类,需要将给类先导入到使用的类中 类导入的语法 import 包名.类名; 或者 import 包名.*; 包的导入 导入类 instanceof运算符的使用 用于判断一个对象是不是某个类的实例 instanceof运算符 多态 包的使用 package 关键字 import 关键字 抽象类 abstract关键字 final 关键字 接口 interface关键字 implements关键字 本章总结 作业一 设计一个台灯类Lamp其中台灯有灯泡这个属性,还有开灯(on)这个方法,设计一个灯泡类 其中有红灯泡(RedBuble) 和绿灯泡(GreenBuble) 他们都有一个发亮的方法,请设计出一段代码可以使台灯开启灯泡发亮,并且保证替换不同种类的灯泡台灯类代码不被修改。 作业二: 设计一个继承关系其中存在动物类Animal、狗类Dog和猫类Cat,对于猫类和狗类都有一个吃eat方法,但是猫和狗的吃eat方法的实现不同,请合理的设计出Animal Dog Cat这3个类关系 作业 作业三: 设计一个形状类(接口)Shape,方法:求周长和求面积 形状类(接口)的子类(实现类):Rect(矩形),Circle(圆形) Rect类的子类:Square(正方形) 不同的子类会有不同的计算周长和面积的方法 创建三个不同的形状对象,放在Shape类型的数组里,分别打印出每个对象的周长和面积 作业 作业四: 某公司的雇员分为以下若干类: Employee:这是所有员工总的父类,属性:员工的姓名,员工的生日月份。方法:getSalary(int month) 根据参数月份来确定工资,如果该月员工过生日,则公司会额外奖励100元。 SalariedEmployee:Employee的子类,拿固定工资的员工。属性:月薪 HourlyEmployee:Employee的子类,按小时拿工资的员工,每月工作超出160小时的部分按照1.5倍工资发放。属性:每小时的工资、每月工作的小时数 SalesEmployee:Employee的子类,销售人员,工资由月销售额和提成率决定。属性:月销售额、提成率 BasePlusSalesEmployee:SalesEmployee的子类,有固定底薪的销售人员,工资由底薪加上销售提成部分。属性:底薪。 写一个程序,把若干各种类型的员工放在一个Employee数组里,写一个方法,打印出某月每个员工的工资数额。注意:要求把每个类都做成完全封装,不允许非私有化属性。 作业 多态 方法的重写和方法的重载 public class MathDemo{ } Java语言基础 第七章 面向对象 static关键字 封装 继承 extends 方法重写 super关键字 向上转型 向下转型 上章内容 多态 包的使用 package 关键字 import 关键字 抽象类 abstract关键字 接口 本章内容 什么是多态 多态顾名思义即为多种形态的意思 Java中多态的含义 发送消息给某个对象,让这个对象自行决定采用哪种行为响应这个消息 子类对象的引用赋值给父类引用变量来实现动态的方法调用 Java中形成多态的前提 继承 重写 向上转型 多态的概念 多态的应用 动物园有这些动物:狗、兔子等,饲养员每天都会给这些动物喂食,狗喜欢吃骨头、而兔子喜欢吃胡萝卜,通过Java程序模拟饲养员喂食 参考代码: ../案例/Animal.java ../案例/Food.java ../案例/Rabbit.java、Dog.java ../案例/Carrot.java、Bone.java 多态的应用 提高代码的可重用性 降低模块之间的耦合度 多态的作用 形状类Shape需要提供用于计算面积和周长的方法,但是形状本身没有被确定,那么计算周长和面积的方法就无法确定,此时我们就需要使用抽象类和抽象方法。 由于Shape类计算周长和面积的方法无法确定,那么就可以将这样的方法声明为抽象的,以便在具体的子类中进行实现。 抽象方法的声明 [修饰符] abstract 返回值类型 方法名([参数列表]); 注意:因为抽象方法无法确定具体执行的功能,所有抽象方法没有方法体,需要在小括号后加上分号 抽象类和抽象方法 抽象方法 如果一个类的某些功能比较抽象或者无法在本类中具体实现,可以将这个类声明为抽象的,那么这些抽象或者无法具体实现的功能可以在子类中完成。 抽象类的语法 [修饰符] abstract class 类名 [extends 父类名]{类体} 抽象类和普通类除了使用abstract修

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档