新java课件 chap5.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * 在线教务辅导网: 教材其余课件及动画素材请查阅在线教务辅导网 QQ:349134187 或者直接输入下面地址: 抽象性、封装性、继承性和多态性称为面向对象的四大特性。通过前面的学习,对前两个特性有了一定程度的理解,本章将继续探讨后两个特性,即继承性和多态性。 第5章 继承与多态 类的继承; 类成员的隐藏与重载; 多态性; Object类和 Class类; 抽象类与接口; 对象克隆; 对象转型和类的设计原则 本章要点 Java中的继承分类的继承和接口的继承两种,类的继承只支持单继承;而接口的继承可以是多重继承。 5.1 类的继承 [Modifiers] class SubClassName extends SuperClassName { //ClassBody } 子类的定义子类也是类。 它的定义形式与一般类的定义形式极其相似,其格式为: 其中,Modifiers是修饰符,可以使用的修饰符与前一章中所介绍的一样;SubClassName是子类的名称;extends是用于实现继承的关键字,当类的定义中有extends关键字时,表示当前定义的类继承于别的类,是别的类的子类;SuperClassName是父类名;ClassBody是子类的类体。 5.1 类的继承——子类的定义 class Point{ //点类 protected int x,y; //点坐标 public Point(){} //无参构造方法 public Point(int xx,int yy){setPoint(xx,yy);} public void setPoint(int m,int n){x=m;y=n;} //设置标位置 public int getX(){return x;} public int getY(){return y;} } class Circle extends Point{ //定义圆类 private double radius; //radius为圆的半径 public Circle(int x,int y,double r){this.x=x;this.y=y;setRadius(r);} public void setRadius(double r){radius=r;} //设置圆的半径 public double getRadius(){return radius;} //获取圆的半径 public double getArea(){return 3.1415*radius*radius;} //获取圆的面积 5.1 类的继承——子类的定义示例 继承于点 类的圆类 public String toString() { returnPosition(+x+,+y+)Radius=+radius;} } public class CircleTest{ public static void main(String[] args){ Circle c=new Circle(50,50,10); System.out.println(c.toString()); c.setPoint(100,100); c.setRadius(20); System.out.println(c.toString()); }} 5.1 类的继承——子类的定义示例 例中,定义了三个类Point、Circle和CircleTest。Circle继承于Point类,Point类是父类,Circle是子类。 在子类的定义示例有这样一条语句: 5.1 类的继承——子类的构造方法 public Point(){} //无参构造方法 Java中,在执行子类的构造方法时,必须先执行父类的构造方法,它的第一条语句必须是调用父类的构造方法的语句。调用父类的构造方法是通过语句super()来完成的。如果要调用父类的有参构造方法,则在super()的圆括号中加入所需的参数。 当在子类的构造方法中通过super()来调用父类的构造方法时,如果不带参数,则这样的显式调用可以省略,它调用父类的构造方法是由系统自动进行的。但是,此时,如果父类中没有显式定义无参的构造方法,则编译出错。 通过类的继承,子类继承了父类的成员,同时在子类中还可以添加一些新成员。但是,当在子类中添加的成员与父类中的成员同名时,系统如何处理这样的冲突呢?本节主要探讨这个问题。 5.2 类成员的隐藏与重载 通过继承,子类继承了父类中除构造方法以外的所有成员

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档