第05讲 面向对象高级程序设计.ppt

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《Java程序设计之网络编程》 电子邮件:lizhx@126.com 第5章 面向对象高级程序设计 主要内容 5.1 继承 5.2多态性 5.3 抽象类和抽象方法 5.4接口 5.5内部类和匿名类 5.1 继承 5.1.1 创建子类 5.1.2 成员变量的隐藏和方法的重写 5.1.3 super 5.1.4 对象的上转型对象 5.1.1 创建子类 继承是一种由已有的类创建新类的机制。利用继承,我们可以先创建一个拥有共同属性的一般类,根据该一般类再创建具有特殊属性的新类。由继承而得到的类称为子类(subclass), 被继承的类称为父类(或叫超类,superclass)。 直接或间接被继承的类都是父类。子类继承父类的状态和行为,同时也可以修改父类的状态或重写父类的行为,并添加新的状态和行为。Java中不支多重继承。 5.1.1 创建子类 通过在类的声明中加入extends子句来创建一个类的子类,其格式如下: class SubClass extends SuperClass{ …… } 上面的代码把SubClass声明为SuperClass的直接子类。如果SuperClass又是某个类的子类,则SubClass同时也是该类的(间接)子类。子类可以继承父类的成员变量和方法。如果缺省extends子句,则该类为java.lang.Object的子类。子类可以继承父类中访问权限设定为public、protected、default的成员变量和方法。但是不能继承访问权限为private的成员变量和方法。 5.1.1 创建子类 5.1.1 创建子类 5.1.1 创建子类 注意,MammalClass类拥有来自于DogClass和CatClass的相同属性,包括了name、eyeColor、age等。现在我们可以利用继承重写DogClass和CatClass。 public class DogClass extends MammalClass { boolean hasTail; // name,eyeColor,age已经从父类继承 public DogClass() { //隐式调用super() name=Chase; eyeColor=Black; age=2; hasTail=true; } } 5.1.1 创建子类 【例5-1】 继承的简单例子 class Father{ //父类 private int money; float weight,height; String head; String speak(String s) { return s ; } } class Son extends Father{ //子类 String hand ,foot; } 5.1.1 创建子类 【例5-1】 继承的简单例子 public class TestExtend { public static void main(String args[]){ Son boy=new Son(); boy.weight=120f; boy.height=1.8f; boy.head=一个头; boy.hand=两只手; boy.foot=两只脚; System.out.println(我是儿子); System.out.println(我有:+boy.hand+、+boy.foot+、+ boy.head +、重+boy.weight+、高+boy.height); } } 上面程序运行结果如下: 我是儿子 我有:两只手、两只脚、一个头、重120.0、高1.8 5.1.1 创建子类 如果子类和父类不在同一个包中,那么,子类可以继承了父类的protected、public修饰的成员变量做为子类的成员变量,并且也可以继承了父类的protected、 public 修饰的方法作为子类的方法。另外子类和父类不在同一个包中,则子类不能继承父类的default变量和default方法。 5.1.1 创建子类 5.1.1 创建子类 5.1.1 创建子类 5.1.1 创建子类 5.1.2 成员变量的隐藏和方法的重写 5.1.2 成员变量的隐藏和方法的重写

文档评论(0)

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

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

1亿VIP精品文档

相关文档